ci: Remove tags instead of only deprecating (#11263)

ci: deprecate -> remove

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
This commit is contained in:
Jiralite
2025-11-20 20:17:00 +00:00
committed by GitHub
parent 68bb8af58a
commit 5dea94602e
4 changed files with 91 additions and 55 deletions

View File

@@ -1,52 +0,0 @@
name: Deprecate tag
on:
workflow_dispatch:
inputs:
tag:
description: The tag to deprecate
required: true
type: string
message:
description: Deprecation message
required: false
type: string
jobs:
deprecate:
runs-on: ubuntu-latest
if: github.repository_owner == 'discordjs'
steps:
- name: Checkout repository
uses: actions/checkout@v5
- name: Install Node.js v24
uses: actions/setup-node@v6
with:
node-version: 24
package-manager-cache: false
- name: Install dependencies
uses: ./packages/actions/src/pnpmCache
- name: Deprecate
run: |
pnpm exec npm-deprecate \
--deprecate-dist-tag \
--name "*-${{inputs.tag}}.*" \
--message "${{inputs.message || 'This version is deprecated. Please use a newer version.'}}" \
--package '@discordjs/brokers' \
--package '@discordjs/builders' \
--package '@discordjs/collection' \
--package '@discordjs/core' \
--package 'create-discord-app' \
--package 'create-discord-bot' \
--package '@discordjs/formatters' \
--package 'discord.js' \
--package '@discordjs/next' \
--package '@discordjs/proxy' \
--package '@discordjs/rest' \
--package '@discordjs/structures' \
--package '@discordjs/util' \
--package '@discordjs/voice' \
--package '@discordjs/ws'
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }}

View File

@@ -48,6 +48,9 @@ jobs:
uses: ./packages/actions/src/pnpmCache uses: ./packages/actions/src/pnpmCache
- name: Deprecate - name: Deprecate
run: pnpm exec npm-deprecate --name "${{inputs.version}}" --message "${{inputs.message || 'This version is deprecated. Please use a newer version.'}}" --package ${{inputs.package}} uses: ./packages/actions/src/deprecateVersion
env: with:
NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }} package: ${{ inputs.package }}
version: ${{ inputs.version }}
message: ${{ inputs.message }}
node-auth-token: ${{ secrets.NPM_PUBLISH_TOKEN }}

60
.github/workflows/remove-tag.yml vendored Normal file
View File

@@ -0,0 +1,60 @@
name: Remove tag
on:
workflow_dispatch:
inputs:
tag:
description: The tag to remove
required: true
type: string
message:
description: Deprecation message
required: false
type: string
jobs:
removal:
runs-on: ubuntu-latest
if: github.repository_owner == 'discordjs'
strategy:
matrix:
package:
- '@discordjs/brokers'
- '@discordjs/builders'
- '@discordjs/collection'
- '@discordjs/core'
- 'create-discord-app'
- 'create-discord-bot'
- '@discordjs/formatters'
- 'discord.js'
- '@discordjs/next'
- '@discordjs/proxy'
- '@discordjs/rest'
- '@discordjs/structures'
- '@discordjs/util'
- '@discordjs/voice'
- '@discordjs/ws'
fail-fast: false
steps:
- name: Checkout repository
uses: actions/checkout@v5
- name: Install Node.js
uses: actions/setup-node@v6
with:
node-version: 24
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
uses: ./packages/actions/src/pnpmCache
- name: Remove tag
run: pnpm dist-tag rm "${{ matrix.package }}" "${{ inputs.tag }}"
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }}
- name: Deprecate version
uses: ./packages/actions/src/deprecateVersion
with:
package: ${{ matrix.package }}
version: '*-${{ inputs.tag }}.*'
message: ${{ inputs.message }}
node-auth-token: ${{ secrets.NPM_PUBLISH_TOKEN }}

View File

@@ -0,0 +1,25 @@
name: Deprecate package version
description: Deprecates package versions.
inputs:
package:
description: Package name
required: true
version:
description: Version to deprecate
required: true
message:
description: Deprecation message
required: false
default: This version is deprecated. Please use a newer version.
node-auth-token:
description: npm authentication token
required: true
runs:
using: composite
steps:
- name: Deprecate version
shell: bash
run: |
pnpm exec npm-deprecate --name "${{ inputs.version }}" --message "${{ inputs.message }}" --package "${{ inputs.package }}"
env:
NODE_AUTH_TOKEN: ${{ inputs.node-auth-token }}