Довідка для розробників

Ви читаєте неофіційний переклад оригінальної сторінки.

Ліцензування має бути простим для розробників. Ми надаємо кілька інструментів і послуг, які дозволять вам зосередитися на написанні коду.

Зміст: Допоміжний інструмент, приклади репозиторіїв, REUSE API, Робочі процеси CI/CD

Інструмент REUSE

Інструмент REUSE tool допомагає досягти та підтвердити відповідність REUSE. Він завантажує повні тексти ліцензій, додає інформацію про авторські права та ліцензії до заголовків файлів і містить лінтер для виявлення проблем. Зрештою, ви можете згенерувати специфікацію програмного забезпечення.

Прочитайте документацію, щоб дізнатися більше про інструмент. Ви також знайдете розділ [“Як мені…”] у наших поширених запитаннях (/uk/faq/#howto), щоб дізнатися про різні взаємодії інструментів.

Приклад репозиторіїв

Як виглядає проєкт, сумісний з REUSE? Ці репозиторії базові, але кожен з них відповідає REUSE. Ми робимо їх доступними, щоб продемонструвати, як REUSE працює на практиці.

Подумайте про реєстрацію проєкту в REUSE API, щоб додати відзнаку динамічної відповідності.

API

REUSE API допомагає вам постійно перевіряти та показувати відповідність настановам REUSE. Ви можете включити відзнаку, що вказує на поточний стан, у свій файл README і проаналізувати вихідні дані за допомогою згенерованого файлу JSON.

Ось який вигляд матиме відзнака для проєкту, сумісного з REUSE. Ви можете натиснути на неї, щоб побачити більше відомостей:  Стан\nREUSE

API є ідеальним інструментом для всіх, хто хоче показати, що їхній репозиторій дотримується найкращих практик у наданні відомостей про ліцензування та авторські права. Він дозволяє стороннім службам інтегрувати поточний стан REUSE і пропонує просту альтернативу для людей, які не хочуть встановлювати REUSE tool для першої швидкої перевірки.

Як і все інше в REUSE, API загальнодоступний під ліцензіями вільного програмного забезпечення.

Pre-commit hook

Ви можете автоматично запускати reuse lint під час кожного коміту як хук передкоміту для Git. Для цього використовується pre-commit. Після того, як ви встановите його, додайте .pre-commit-config.yaml до вашого репозиторію:

# SPDX-FileCopyrightText: 2020 Free Software Foundation Europe e.V.
# SPDX-License-Identifier: CC0-1.0
репозиторії:
  - репозиторій: https://github.com/fsfe/reuse-tool
    ревізія: v5.0.2
   хуки:
      - ідентифікатор: reuse

Потім запустіть pre-commit install. Тепер за кожного коміту reuse lint запускається у фоновому режимі, і не дозволить вашому коміту виконатися, якщо сталася помилка.

Включення в робочі процеси CI/CD

REUSE можна легко інтегрувати у ваші наявні процеси CI/CD, щоб постійно тестувати ваш репозиторій та його зміни на відповідність вимогам REUSE.

FSFE пропонує образ Docker, який можна використовувати в багатьох рішеннях CI. Знайдіть кілька прикладів нижче:

Drone

Додайте цей фрагмент у файл .drone.yml:

# SPDX-FileCopyrightText: 2020 Free Software Foundation Europe e.V.
# SPDX-License-Identifier: CC0-1.0
кроки:
  - ім'я: reuse
    зображення: fsfe/reuse:latest

Докладніше про Drone на drone.io.

GitHub

Користувачі GitHub можуть інтегрувати дію REUSE у свій робочий процес. Включіть цей файл як .github/workflows/reuse.yaml:

# SPDX-FileCopyrightText: 2020 Free Software Foundation Europe e.V.
# SPDX-License-Identifier: CC0-1.0
ім'я: REUSE Compliance Check

on: [push, pull_request]

jobs:
  тест:
    runs-on: ubuntu-latest
    кроки:
      - використовує: actions/checkout@v4
      - ім'я: REUSE Compliance Check
        використовує: fsfe/reuse-action@v4

Відвідайте сторінку маркетплейсу «action», щоб отримати додаткові інструкції з використання.

Докладніше про GitHub Actions на docs.github.com.

GitLab

Додайте цей фрагмент у файл .gitlab-ci.yml:

# SPDX-FileCopyrightText: 2020 Free Software Foundation Europe e.V.
# SPDX-License-Identifier: CC0-1.0
reuse:
  зображення:
    ім'я: fsfe/reuse:latest
    точка входу: [""]
  скрипт:
    - reuse lint

Докладніше про CI GitLab на docs.gitlab.com.

Travis CI

Додайте цей фрагмент у файл .travis.yml:

# SPDX-FileCopyrightText: 2020 Free Software Foundation Europe e.V.
# SPDX-License-Identifier: CC0-1.0
мова: minimal

служби:
  - docker

before_install:
  - docker pull fsfe/reuse:latest
  - docker run -v ${TRAVIS_BUILD_DIR}:/data fsfe/reuse:latest lint

Докладніше про Travis CI на travis-ci.com.