archpkg
v2.0.1
Published
The DocHub metamodel repository manager.
Downloads
34
Maintainers
Readme
archpkg
Менеджер пакетов архитектурного кода DocHub.
Обеспечивает управление зависимостями архитектурных репозиториев созданных с использованием подхода "Архитектура как код". Позволяет быстро и удобно устанавливать, обновлять и удалять пакеты, необходимые для работы архитектурного репозитория.
archpkg разработан для того, чтобы стимулировать развитие архитектурной функции открытым сообществом. Призван обеспечить обмен опытом и знаниями выраженными в архитектурном коде между членами сообщества.
Инструментализирует концепцию адаптивной метамодели. Подробнее о ней и структуре пакетов здесь.
Экосистема
- DocHub - мультиплатформенный инструмент описания архитектуры через код (AaC);
- https://dochub.info/ - Демонстратор технологии и документация;
- https://registry.dochub.info/ - реестр архитектурных пакетов (TBD);
- arckpkg - менеджер пакетов.
Подготовка
- Установите DocHub;
- Установите latest версию nodejs >= 20.11.0 и npm >= 10.2.3 .
Использование
Используйте команду npx archpkg <Параметры> для вызова пакетного менеджера. Например:
mkdir examples
cd examples
npx archpkg install dochub-examples -save
Данный код создаст директорию "examples" и клонирует в нее архитектурный репозиторий примеров. Воспользуйтесь DocHub для рендеринга архитектурного репозитория.
Команды
install
Устанавливает требуемые пакеты из публичного реестра.
Пример команды:
npx archpkg install
Если используется без параметров, ищет в текущей директории файл dochub.yaml и устанавливает определенные в нем зависимости. Файл должен содержать следующую структуру:
# Метаданные проекта
$package:
<идентификатор_проекта>:
version: "<версия_проекта>"
# Здесь указываются зависимости
dependencies:
<идентификатор пакета>: "<версия>" # Версия указывается в формате x.x.x например 1.2.11
# Доступно указание правил выбора пакетов
# > выше указанной версии, например >1.2.11
# >= выше или равно указанной версии, например >=1.2.11
...
Пример файла dochub.yaml:
$package:
example:
name: Пример файла зависимостей
version: 1.0.0
dependencies:
dochub-examples: ">=1.0.0"
При выполнении команды:
npx archpkg install -save
Будет установлен пакет примеров из репозитория https://github.com/rpiontik/DocHubExamples. Ключ "-save" заставит archpkg добавить в dochub.yaml импорт подключенной зависимости.
install <идентификатор пакета>[@<версия пакета>]
Устанавливает конкретный пакет как зависимость.
npx archpkg install dochub-examples -save
Установит наиболее свежую версию пакета dochub-examples и укажет его как зависимость в текущем проекте.
npx archpkg install dochub-examples@>=1.0.0 -save
Установит версию пакета dochub-examples старше или равную 1.0.0 и укажет его как зависимость в текущем проекте.
npx archpkg install [email protected]
Установит версию пакета dochub-examples равную 1.0.0 но не укажет его как зависимость в текущем проекте.
Ключи
- -cleancache - очищает кэш после завершения работы;
- -save - вносит необходимые изменения в архкод автоматически;
- -downloadcert:<путь> - указывает путь к ssl сертификату;
- -cachefolder:<путь> - указывает путь к кэшу.
remove <идентификатор пакета>
Удаляет указанный пакет из зависимостей.
Пример команды:
npx archpkg remove dochub-examples
Ключи
- -save - вносит необходимые изменения в архкод автоматически;
clean
Очищает вспомогательные пространства используемые archpkg для установки пакетов.
Пример:
npx archpkg clean
Переменные среды
- ARCHPKG_CACHE_FOLDER - путь к директории кэширования. По умолчанию: <ползовательская директория>/.archpkg
- ARCHPKG_REPO_SERVER - сервер репозитория. По умолчанию: https://registry.dochub.info/
- ARCHPKG_DOWNLOAD_CERT - пусть к ssl-сертификату для скачивания пакетов. По умолчанию не установлено.
Лицензия
GPLv3