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

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

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

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

Допоміжний засіб

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

Прочитайте документацію, щоб дізнатися більше про інструмент. Ви також знайдете розділ інструменту в нашому ЧаПі з найактуальнішими питаннями.

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

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

  • reuse-example — репозиторій, сумісний з REUSE, що показує кілька методів додавання відомостей про авторські права та ліцензування. Включає невідповідну гілку для тестування. Цей проєкт — це основа для нашого підручника. - reuse-tool — допоміжний інструмент сам сумісний, як і всі інші репозиторії REUSE.

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

API

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

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

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

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

Pre-commit hook

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

repos:
-   repo: https://github.com/fsfe/reuse-tool
    rev: v1.0.0
    hooks:
    - id: reuse

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

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

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

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

Drone

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

steps:
- name: reuse
  image: fsfe/reuse:latest

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

GitHub

Користувачі GitHub можуть інтегрувати дію REUSE у свій робочий процес. Перейдіть на сторінку маркету дій, щоб отримати настанови щодо використання.

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

GitLab

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

reuse:
  image:
    name: fsfe/reuse:latest
    entrypoint: [""]
  script:
    - reuse lint

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

Travis CI

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

language: minimal

services:
  - docker

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

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