Skip to content
You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
clock

GitHub Action

Copilot License Management

v1

Copilot License Management

clock

Copilot License Management

Automations to manage copilot licenses. Cleanup inactive, rollouts, reporting

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Copilot License Management

uses: austenstone/copilot-license-cleanup@v1

Learn more about this action in austenstone/copilot-license-cleanup

Choose a version

Action

This repository serves as a template for TypeScript Actions.

Usage

Create a workflow (eg: .github/workflows/copilot-license-cleanup.yml). See Creating a Workflow file.

PAT(Personal Access Token)

You will need to create a PAT(Personal Access Token) that has manage_billing:copilot access.

Add this PAT as a secret TOKEN so we can use it for input github-token, see Creating encrypted secrets for a repository.

Organizations

If your organization has SAML enabled you must authorize the PAT, see Authorizing a personal access token for use with SAML single sign-on.

Example

name: Cleanup Copilot Licenses
on:
  workflow_dispatch:
  schedule:
    - cron: '0 0 * * *'

jobs:
  copilot:
    name: Copilot Seats
    runs-on: ubuntu-latest
    steps:
      - uses: austenstone/copilot-license-cleanup@main
        with:
          github-token: ${{ secrets.TOKEN }}
          organization: 'octodemo'
          remove: false
          inactive-days: 30

➡️ Inputs

Various inputs are defined in action.yml:

Name Description Default
github‑token Token to use to authorize. ${{ github.token }}
organization The organization to use for the action ${{ github.repository_owner }}
remove Whether to remove inactive users false
inactive‑days The number of days to consider a user inactive 90
job-summary Whether to output a summary of the job true

⬅️ Outputs

Name Description
inactive-seats JSON array of inactive seats
inactive-seat-count The number of inactive seats
removed-seats The number of seats removed
seat-count The total number of seats

Further help

To get more help on the Actions see documentation.