Pull to refresh

Автоматизируем публикацию Unity packages в npmjs

? Почему npmjs?

  • Адаптирован для работы с Open Source проектами

  • Множество готовых решений для GitHub Actions

  • Поддержка CLI

  • Позволяет видеть историю версий через Unity Package Manager

  1. Генерируем Access Token, используя вебсайт или cli npmjs

  2. Выбираем Access Token тип, в нашем случае Automation, подходящий для CI/CD процессов

  3. Добавляем Access Token, сгенерированный в шаге 2, в раздел Repository secrets своего GitHub репозитория

  4. Настраиваем GitHub workflow, используя шаблон yml следующего вида

name: npm

on:
  release:
    types: [published]

jobs:
  publish-npm:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      packages: write
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v3
        with:
          node-version: '20.x'
          registry-url: https://registry.npmjs.org
      - run: npm install --package-lock-only
      - run: npm ci
      - run: npm publish
        env:
          NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
          GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}

? Готово! Теперь GitHub Actions будет автоматически загружать обновленные версии пакетов в хранилище npmjs

? Пример проекта

Unity AutoKeystore

Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.