Google Cloud Platform Platform C ++ Библиотеки клиентов
Этот репозиторий содержит идиоматические клиентские библиотеки C ++ для следующих сервисов Google Cloud Platform.
Пожалуйста, проверьте ChangeLog на наличие важных объявлений и предстоящих изменений.
QuickStart
Каждая библиотека (см. Ниже) содержит каталог с именем quickstart/
который предназначен для того, чтобы помочь вам встать и работать за считанные минуты. Этот quickstart/
Directory содержит минимальную программу «Hello World», демонстрирующую, как использовать библиотеку, а также минимальные файлы сборки для общих систем сборки, таких как Cmake и Bazel.
В качестве примера, следующий фрагмент кода, взятый из Google Cloud Storage, должен дать вам представление о том, каково это использовать одну из этих библиотек C ++.
# include " google/cloud/storage/client.h "
# include < iostream >
# include < string >
int main ( int argc, char * argv[]) {
if (argc != 2 ) {
std::cerr << " Missing bucket name. n " ;
std::cerr << " Usage: quickstart <bucket-name> n " ;
return 1 ;
}
std::string const bucket_name = argv[ 1 ];
// Create a client to communicate with Google Cloud Storage. This client
// uses the default configuration for authentication and project id.
auto client = google::cloud::storage::Client ();
auto writer = client. WriteObject (bucket_name, " quickstart.txt " );
writer << " Hello World! " ;
writer. Close ();
if (!writer. metadata ()) {
std::cerr << " Error creating object: " << writer. metadata (). status ()
<< " n " ;
return 1 ;
}
std::cout << " Successfully created object: " << *writer. metadata () << " n " ;
auto reader = client. ReadObject (bucket_name, " quickstart.txt " );
if (!reader) {
std::cerr << " Error reading object: " << reader. status () << " n " ;
return 1 ;
}
std::string contents{std::istreambuf_iterator< char >{reader}, {}};
std::cout << contents << " n " ;
return 0 ;
}
GA Библиотеки
Смотрите файл каждой библиотеки README.md
для получения дополнительной информации о:
- Где найти документацию для библиотеки и сервиса.
- Как начать использовать библиотеку.
- Как включить библиотеку в систему сборки.
- Статус поддержки библиотеки, если обычно не доступен (GA); Если это не указано в библиотеке
README.md
, все эти библиотеки - GA и поддерживаются Google.
Расширить, чтобы увидеть полный список библиотек GA
- Доступ к утверждению API [QuickStart] [Ссылка]
- Access Context Manager API [QuickStart] [Ссылка]
- Консультативные уведомления API [QuickStart] [Ссылка]
- Vertex AI API [QuickStart] [ссылка]
- ALLOYDB API [QuickStart] [Ссылка]
- API Gateway API [QuickStart] [ссылка]
- Apigee Connect API [QuickStart] [Ссылка]
- API клавиши API [QuickStart] [ссылка]
- App Engin Admin API [QuickStart] [Ссылка]
- APP HUB API [QuickStart] [Ссылка]
- API реестра артефактов [QuickStart] [Ссылка]
- API API Cloud Asset [QuickStart] [Ссылка]
- Завершенные рабочие нагрузки API [QuickStart] [Ссылка]
- Cloud Automl API [QuickStart] [Ссылка]
- Резервное копирование и API службы DR [QuickStart] [Ссылка]
- Bare Metal Solution API [QuickStart] [ссылка]
- Партия API [QuickStart] [ссылка]
- BeyondCorp API [QuickStart] [ссылка]
- Google Cloud BigQuery [QuickStart] [ссылка]
- Google Cloud BigTable [QuickStart] [ссылка]
- Облачный биллинг бюджетный API [QuickStart] [Ссылка]
- API бинарного авторизации [QuickStart] [Ссылка]
- Manager Manager API [QuickStart] [Ссылка]
- API Cloud Channel [QuickStart] [Ссылка]
- API Cloud Build API [QuickStart] [Ссылка]
- Cloud Control Partner API [QuickStart] [Ссылка]
- Cloud Quatats API [QuickStart] [ссылка]
- Cloud Commerce Consumer Percurement API [QuickStart] [Ссылка]
- Cloud Composer [QuickStart] [ссылка]
- Вычислить API двигателя [QuickStart] [Ссылка]
- Конфиденциальные вычисления API [QuickStart] [Ссылка]
- Менеджер инфраструктуры API [QuickStart] [Ссылка]
- Connectors API [QuickStart] [Ссылка]
- Контактный центр AI Insights API [QuickStart] [Ссылка]
- Kubernetes Engine API [QuickStart] [Ссылка]
- Анализ контейнеров API [QuickStart] [Ссылка]
- Документ AI API API [QuickStart] [QuickStart] [Ссылка]
- Google Cloud Data Catalog API [QuickStart] [Ссылка]
- API API слияния данных облака [QuickStart] [Ссылка]
- API миграции базы данных [QuickStart] [Ссылка]
- Cloud DataPlex API [QuickStart] [ссылка]
- Cloud DataProc API [QuickStart] [ссылка]
- Облачная данных Datastore API [QuickStart] [Ссылка]
- DataStream API [QuickStart] [ссылка]
- Google Cloud Deploy API [QuickStart] [ссылка]
- Разработчик подключить API [QuickStart] [Ссылка]
- Dialogflow CX API [QuickStart] [Ссылка]
- Dialogflow ES API [QuickStart] [Ссылка]
- Discovery Engine API [QuickStart] [Ссылка]
- API предотвращения потери данных облачных данных (DLP) [QuickStart] [Ссылка]
- Облачный документ AI API [QuickStart] [Ссылка]
- Облачные домены API [QuickStart] [ссылка]
- Распределенный контейнер с краем облака [QuickStart] [ссылка]
- Распределенные сетевые API сети облаков [QuickStart] [Ссылка]
- Основные контакты API [QuickStart] [Ссылка]
- Eventarc API [QuickStart] [ссылка]
- Cloud Filestore API [QuickStart] [Ссылка]
- Облачные функции API [QuickStart] [ссылка]
- Резервное копирование GKE API [QuickStart] [ссылка]
- Подключить API Gateway [QuickStart] [Ссылка]
- GKE HUB [QuickStart] [ссылка]
- Anthos Multi-Cloud API [QuickStart] [ссылка]
- Google Cloud IAM [QuickStart] [ссылка]
- Cloud Identity-Aware Proxy API [QuickStart] [Ссылка]
- API API Cloud IDS [QuickStart] [Ссылка]
- Служба управления облачными ключами (KMS) API [QuickStart] [Ссылка]
- API Cloud Natural Language [QuickStart] [ссылка]
- Google Cloud Logging [QuickStart] [Ссылка]
- Управляемый сервис для API API Microsoft Active Directory [QuickStart] [Ссылка]
- Управляемый сервис для Apache Kafka API [QuickStart] [Ссылка]
- Облачный магазин памяти для Memcached API [QuickStart] [Ссылка]
- DataProc Metastore API [QuickStart] [ссылка]
- Центр миграции API [QuickStart] [Ссылка]
- API мониторинга облака [QuickStart] [Ссылка]
- NetApp API [QuickStart] [ссылка]
- API сетевого подключения [QuickStart] [Ссылка]
- API управления сетью [QuickStart] [Ссылка]
- API сетевой безопасности [QuickStart] [Ссылка]
- API сетевых служб [QuickStart] [Ссылка]
- Ноутбуки API [QuickStart] [Ссылка]
- OAuth2 Generation Generation [QuickStart] [ссылка]
- API оптимизации облаков [QuickStart] [ссылка]
- API политики организации [QuickStart] [Ссылка]
- OS Config API [QuickStart] [Ссылка]
- Cloud OS Login API [QuickStart] [Ссылка]
- ParallelStore API [QuickStart] [ссылка]
- Политический симулятор API [QuickStart] [Ссылка]
- Устранение неполадок в политике API [QuickStart] [Ссылка]
- API API ATOMERAL [QuickStart] [QuickStart] [QuickStart]
- Привилегированный Access Manager API [QuickStart] [Ссылка]
- API API Cloud Profiler [QuickStart] [Ссылка]
- Общественный сертификат API [QuickStart] [Ссылка]
- Google Cloud Pub/sub [QuickStart] [Ссылка]
- API оценки быстрого миграции [QuickStart] [Ссылка]
- Recaptcha Enterprise API [QuickStart] [Ссылка]
- Рекомендации [QuickStart] [Ссылка]
- Google Cloud Memorystore для Redis API [QuickStart] [Ссылка]
- API Cloud Resource Manager [QuickStart] [Ссылка]
- Настройки ресурса API [QuickStart] [Ссылка]
- Розничный API [QuickStart] [Ссылка]
- Cloud Run Admin API [QuickStart] [Ссылка]
- API API Pcheduler Cloud [QuickStart] [Ссылка]
- Секретный менеджер API [QuickStart] [Ссылка]
- Secure Source Manager API [QuickStart] [Ссылка]
- API Command Centre Command [QuickStart] [Ссылка]
- API управления центром безопасности [QuickStart] [Ссылка]
- API управления обслуживанием [QuickStart] [Ссылка]
- API Directory Service API [QuickStart] [Ссылка]
- API службы здравоохранения [QuickStart] [Ссылка]
- API управления услугами [QuickStart] [Ссылка]
- API использования услуг [QuickStart] [Ссылка]
- API Cloud Shell [QuickStart] [Ссылка]
- Google Cloud Spanner [QuickStart] [ссылка]
- Облачный API речи к тексту [QuickStart] [ссылка]
- Cloud SQL Admin API [QuickStart] [Ссылка]
- Google Cloud Storage [QuickStart] [Ссылка]
- API управления хранением [QuickStart] [Ссылка]
- Herese Insights API [QuickStart] [Ссылка]
- API передачи хранения [QuickStart] [Ссылка]
- Google Cloud Support API [QuickStart] [Ссылка]
- Облачный талант решения API [QuickStart] [ссылка]
- Облачные задачи API [QuickStart] [ссылка]
- API API Telco Automation [QuickStart] [Ссылка]
- Облачный API текста в речь [QuickStart] [ссылка]
- Timessheries Insights API [QuickStart] [Ссылка]
- Cloud TPU API [QuickStart] [ссылка]
- Cloud Trace API [QuickStart] [ссылка]
- Облачный перевод API [QuickStart] [ссылка]
- Видео службы [QuickStart] [Ссылка]
- API Cloud Video Intelligence [QuickStart] [Ссылка]
- API Cloud Vision [QuickStart] [ссылка]
- VM Migration API [QuickStart] [ссылка]
- VMware Engine API [QuickStart] [Ссылка]
- Без сервера VPC Access API [QuickStart] [Ссылка]
- API веб -риска [QuickStart] [Ссылка]
- Сканер Web Security API [QuickStart] [Ссылка]
- Выполнение рабочего процесса API [QuickStart] [Ссылка]
- Облачные рабочие станции API [QuickStart] [Ссылка]
Строительство и установка
Это руководство по QuickStart для разработчиков, желающих собрать библиотеки и запустить примеры, включенные в библиотеки.
- Содействия упаковке или разработчики, которые предпочитают устанавливать библиотеку в фиксированном каталоге (например,
/usr/local
или /opt
), должны проконсультироваться с руководством по упаковке. - Разработчики, которые предпочитают использовать диспетчер пакетов, такой как VCPKG или Conda, должны следовать инструкциям для своего менеджера пакетов.
- Разработчики, желающие использовать библиотеки в рамках более крупного проекта Cmake или Bazel, должны проконсультироваться с руководствами QuickStart для библиотеки или библиотек, которые они хотят использовать.
- Разработчики, желающие собрать библиотеку, просто для запуска некоторых примеров или тестов, должны прочитать текущий документ.
- Вкладчики и разработчики в
google-cloud-cpp
должны проконсультироваться с руководством по созданию рабочей станции разработки.
Здание с Базелем
Эта библиотека требует Bazel> = 6.0. Из каталога верхнего уровня запустите обычные команды.
Здание с Cmake
Эта библиотека требует Cmake> = 3.10. Если вы планируете установить библиотеки, обратитесь к руководству по упаковке, эти инструкции не будут создавать артефакты, которые вы можете поместить /usr/local
, или поделиться со своими коллегами.
Из каталога верхнего уровня google-cloud-cpp
запустите эти команды:
git -C $HOME clone https://github.com/microsoft/vcpkg.git
env VCPKG_ROOT= $HOME /vcpkg $HOME /vcpkg/bootstrap-vcpkg.sh
cmake -S . -B cmake-out/ -DCMAKE_TOOLCHAIN_FILE= $HOME /vcpkg/scripts/buildsystems/vcpkg.cmake
cmake --build cmake-out -- -j $( nproc )
Бинарные артефакты, такие как примеры, будут размещены в cmake-out/
.
Поддерживать
- Этот проект следует за политикой поддержки C ++ от Google, которая обобщена в основополагающей матрице поддержки C ++.
- Языковая версия (> = c ++ 14).
- Операционные системы: Windows, MacOS и Linux.
- Системы сборки: Bazel (> = 6.0), Cmake (> = 3.10).
- Компиляторы: GCC (> = 7,5), Clang (> = 6.0), MSVC (> = 2022), Apple Clang (> = 12).
- Этот проект использует зависимости, описанные в doc/packaging.md.
- Этот проект работает или без исключений.
- Этот проект сокращает ежемесячные релизы с подробными заметками о выпуске.
Общественные изменения API и API нарушают изменения
Этот проект следует за политикой Google Library Breaking Breaking Breaking Breaking.
В общем, мы избегаем вносить отсталые несовместимые изменения в нашем публичном API. Иногда такие изменения приносят преимущества для наших клиентов, в форме лучшей производительности, более легких для понимания API и/или более последовательных API между услугами. Когда эти льготы требуют этого, мы будем:
- Объявите эти изменения в нашем файле
CHANGELOG.md
и в заметках затронутого релиза. - Увеличьте основную версию для
google-cloud-cpp
.
Тем не менее, хотя мы предпринимаем коммерчески разумные усилия, чтобы предотвратить это, возможно, что обратные несовместимые изменения остаются незамеченными и, следовательно, недокументированы. Приносим извинения, если это так, и приветствуем отзывы или отчеты об ошибках, чтобы исправить проблему.
Связаться с нами
- Дискуссии GitHub - по вопросам и общим комментариям
- Проблемы GitHub - для отчетности об ошибках и запросах функций
Способствуя изменения
См. CONTRIBUTING.md
для получения подробной информации о том, как внести свой вклад в этот проект, в том числе как создавать и проверить ваши изменения, а также, как правильно отформатировать код.
Лицензирование
Apache 2.0; Смотрите LICENSE
для деталей.