Трек

Примечание

В настоящее время Atomist находится в стадии Ранний доступ. Функции и API могут быть изменены.

Интегрируя Atomist со средой выполнения, вы можете отслеживать уязвимости для развернутых контейнеров. Это позволит вам определить, увеличивается или уменьшается долг безопасности.

Существует несколько вариантов того, как можно реализовать отслеживание развертывания:

  • Вызов API напрямую

  • Добавление его в качестве шага в конвейер непрерывного развертывания

  • Создание контроллеров допуска Kubernetes

API

Каждое рабочее пространство Atomist открывает конечную точку API. Отправка POST-запроса на конечную точку обновляет данные Atomist о том, какой образ запущен в вашем окружении. Это позволяет сравнивать данные для созданных вами образов с образами контейнеров, запущенных в staging или production.

URL конечной точки API можно найти на странице Интеграции. Для использования этого API требуется ключ API.

Наиболее простым способом использования является отправка сообщений в эту конечную точку с помощью веб-крючка. При развертывании нового образа отправить автоматический POST-запрос (например, с использованием curl) как часть конвейера развертывания.

$ curl <api-endpoint-url> \\
  -X POST \\
  -H "Content-Type: application/json" \\
  -H "Authorization: Bearer <api-token>" \\
  -d '{"image": {"url": "<image-url>@<sha256-digest>"}}'

Параметры

API поддерживает следующие параметры в теле запроса:

{
  "image": {
    "url": "string",
    "name": "string"
  },
  "environment": {
    "name": "string"
  },
  "platform": {
    "os": "string",
    "architecture": "string",
    "variant": "string"
  }
}

Параметр

Обязательно

По умолчанию

Описание

image.url

Да

Полное ссылочное имя образа, плюс версия (дайджест). Вы должны указывает версию образа по дайджесту.

image.name

Нет

Необязательный идентификатор. Если вы развертываете много контейнеров из одного образа в одной среде, каждый экземпляр должен иметь уникальное имя.

environment.name

Нет

deployed

Используйте пользовательские имена среды для отслеживания различных версий образов в средах, например staging и production

platform.os

Нет

linux

Образ операционной системы.

platform.architecture

Нет

amd64

Архитектура набора команд.

platform.variant

Нет

Дополнительная этикетка варианта.