Files
discord.js/.github/workflows/publish-dev.yml
almeidx 091e07bf0c chore(deps): update github-actions
* actions/cache v4 -> v5
* actions/create-github-app-token v2 -> v3
* actions/download-artifact v6 -> v8
* actions/labeler v5 -> v6
* actions/upload-artifact v5 -> v7
* codecov/codecov-action v4 -> v6
* crazy-max/ghaction-github-labeler v5 -> v6
* dessant/lock-threads v5 -> v6
* docker/build-push-action v6 -> v7
* docker/login-action v3 -> v4
* docker/setup-buildx-action v3 -> v4
* pnpm/action-setup v4.1.0 -> v6.0.8
2026-05-23 21:42:47 +01:00

95 lines
2.8 KiB
YAML

name: Publish dev
on:
schedule:
- cron: '0 */12 * * *'
workflow_dispatch:
inputs:
ref:
description: 'The ref to check out. e.g. main, feat/new-feature, refs/pull/1234/head'
required: false
default: 'main'
tag:
description: 'The tag to use, generally a feature name'
required: false
type: string
dry_run:
description: 'Perform a dry run that skips publishing and outputs logs indicating what would have happened'
type: boolean
default: false
jobs:
npm-publish:
name: npm publish
runs-on: ubuntu-latest
permissions:
id-token: write
env:
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
TURBO_TEAM: ${{ vars.TURBO_TEAM }}
if: github.repository_owner == 'discordjs'
steps:
- uses: actions/create-github-app-token@v3
id: app-token
with:
app-id: ${{ vars.DISCORDJS_APP_ID }}
private-key: ${{ secrets.DISCORDJS_APP_KEY_RELEASE }}
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
token: ${{ steps.app-token.outputs.token }}
ref: ${{ inputs.ref }}
- name: Install Node.js v24
uses: actions/setup-node@v6
with:
node-version: 24
package-manager-cache: false
registry-url: https://registry.npmjs.org/
- name: Install dependencies
uses: ./packages/actions/src/pnpmCache
- name: Build dependencies
run: pnpm run build
- name: Checkout main repository (non-main ref)
if: ${{ inputs.ref != 'main' }}
uses: actions/checkout@v6
with:
path: 'main'
- name: Install action deps (non-main ref)
if: ${{ inputs.ref != 'main' }}
shell: bash
working-directory: ./main
env:
COREPACK_ENABLE_STRICT: 0
run: |
pnpm self-update 10
pnpm install --filter @discordjs/actions --frozen-lockfile --prefer-offline --loglevel error
- name: Publish packages (non-main ref)
if: ${{ inputs.ref != 'main' }}
uses: ./main/packages/actions/src/releasePackages
with:
exclude: '@discordjs/docgen'
dry: ${{ inputs.dry_run }}
dev: true
tag: ${{ inputs.tag || 'dev' }}
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Publish packages (main ref)
if: ${{ inputs.ref == 'main' }}
uses: ./packages/actions/src/releasePackages
with:
exclude: '@discordjs/docgen'
dry: ${{ inputs.dry_run }}
dev: true
tag: ${{ inputs.tag || 'dev' }}
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}