← Artifacts / artifacts / concepts
Как работает Artifacts
Artifacts создаёт Git-репозитории по запросу. Каждый репозиторий представляет собой изолированный Git-сервис с собственным URL-адресом удалённого репозитория, токенами и устойчивым состоянием.
Базовая модель
Пространства имён являются контейнером верхнего уровня для репозиториев. Репозиторий существует внутри одного пространства имён, и его имя уникально в пределах этого пространства имён.
Artifacts не создаёт пространства имён отдельно. Когда вы создаёте первый репозиторий с новым именем пространства имён, Artifacts создаёт это пространство имён неявно.
Пространство имён задаёт границы именования и маршрутизации для репозиториев. Вместе пространство имён и имя репозитория образуют постоянный адрес репозитория, а API также возвращает идентификатор репозитория в ответах.
Подобно Durable Objects, репозиторий представляет собой единый логический экземпляр, к которому Cloudflare может обращаться из любого региона.
Поскольку каждый репозиторий изолирован, у него есть собственные:
- История и ссылки Git
- токены доступа и удалённый URL
- жизненный цикл и устойчивое состояние
Репозитории можно создавать по мере необходимости. Это позволяет Artifacts представлять множество небольших рабочих задач в виде отдельных репозиториев.
Создание форка работает по той же модели. Форк создаёт новый репозиторий, который начинается с истории существующего репозитория, а затем развивается независимо, получая собственные токены, маршрутизацию и жизненный цикл.
Доступ также привязан к конкретному репозиторию. У каждого репозитория есть собственные токены, и каждый токен можно ограничить определённым уровнем доступа:
readдля clone, fetch, pull, индексирования и просмотраwriteдля push и других изменяющих операций
Ваш Worker или слой API решает, когда выпускать эти токены. Это позволяет держать аутентификацию и авторизацию отдельно от репозитория, но при этом сохранять возможность использовать репозиторий из Workers, REST API или любого стандартного Git-клиента.
Долговечность
По умолчанию Artifacts обеспечивает устойчивое хранение данных. Работа репозитория не зависит от того, остаётся ли активным один процесс или доступным один дата-центр.
Внутри платформы Cloudflare реплицирует данные репозитория синхронно между несколькими дата-центрами и асинхронно копирует их в объектное хранилище и снимки. Вам не нужно создавать собственный конвейер репликации, отказоустойчивости или снимков, чтобы данные репозитория оставались доступны.
Artifacts управляет жизненным циклом Git-сервера и инфраструктурой хранения, лежащими в основе этих рабочих процессов Git.
Подробнее
Сведения о шаблонах репозиториев см. в Рекомендации по использованию Artifacts. О поведении токенов см. Протокол Git. Об обновлениях продукта см. Журнал изменений Artifacts.