Skip to content

XLSX Generator Runner

Описание

runner-xlsx-generator — раннер для генерации XLSX-файлов (Microsoft Excel). Находится в стадии разработки.

Текущий статус

В разработке — исходный код пока не реализован. Доступна только структура runner-common.

Планируемые возможности

  • Генерация XLSX-файлов из данных
  • Подстановка переменных в шаблоны
  • Поддержка формулы и стилей
  • Загрузка готового файла как артефакт

Конфигурация

Общие параметры runner-common

См. Общая документация.

Ожидаемые специфичные параметры

ПараметрОписаниеПо умолчанию
sheet_nameИмя листаSheet1
templateПуть к шаблону XLSX-

Планируемая семантика команды

Command

Будет содержать JSON с данными для генерации:

json
{
  "headers": ["ID", "Название", "Цена"],
  "rows": [
    [1, "Товар А", 100],
    [2, "Товар Б", 200]
  ]
}

Variables

Переменные для подстановки в шаблон:

Variables: [
  { name: "title", value: "Отчет о продажах" },
  { name: "date", value: "01.01.2025" }
]

Результат

  • Имя файла: spreadsheet.xlsx
  • Формат: Microsoft Excel (XLSX)
  • Артефакт загружается в хранилище

Пример конфигурации (ожидаемый)

yaml
url: "https://app.com/"
token: "your-token"
concurrency: 1
tags: "xlsx,generator"
sheet_name: "Данные"

Пример использования (ожидаемый)

Простой отчет

Command:

json
{
  "headers": ["Дата", "Продукт", "Количество", "Сумма"],
  "rows": [
    ["2025-01-01", "Товар А", 10, 1000],
    ["2025-01-02", "Товар Б", 5, 2500]
  ]
}

Variables:

title: "Отчет за январь 2025"

Сводная таблица

Command:

json
{
  "sheets": [
    {
      "name": "Продажи",
      "headers": ["Продукт", "Количество"],
      "rows": [["А", 100], ["Б", 200]]
    },
    {
      "name": "Итоги",
      "headers": ["Показатель", "Значение"],
      "rows": [["Всего продаж", 300]]
    }
  ]
}

Зависимости

  • runner-common (git submodule)
  • Библиотека для работы с XLSX (планируется)

Статус реализации

  • [ ] Структура проекта
  • [ ] Конфигурация
  • [ ] Executor
  • [ ] Поддержка шаблонов
  • [ ] Генерация XLSX
  • [ ] Артефакты
  • [ ] Тесты