Bibliotecas de clientes C ++ da plataforma do Google Cloud
Este repositório contém bibliotecas de clientes C ++ idiomáticas para os seguintes serviços do Google Cloud Platform.
Verifique o Changelog para obter anúncios importantes e as próximas alterações.
Investir rápido
Cada biblioteca (veja abaixo) contém um diretório chamado quickstart/
que se destina a ajudá -lo a subir e funcionar em questão de minutos. Este diretório quickstart/
contém um programa mínimo de "Hello World", demonstrando como usar a biblioteca, juntamente com arquivos de construção mínimos para sistemas de construção comuns, como CMake e Bazel.
Como exemplo, o seguinte snippet de código, retirado do Google Cloud Storage, deve fornecer uma noção de como é usar uma dessas bibliotecas 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 ;
}
Bibliotecas GA
Consulte o arquivo README.md
de cada biblioteca para obter mais informações sobre:
- Onde encontrar a documentação para a biblioteca e o serviço.
- Como começar a usar a biblioteca.
- Como incorporar a biblioteca ao seu sistema de construção.
- O status de suporte da biblioteca se não estiver geralmente disponível (GA); A menos que seja indicado no
README.md
da biblioteca, essas bibliotecas são todas GA e suportadas pelo Google.
Expanda para ver a lista completa das bibliotecas GA
- API de aprovação de acesso [Quickstart] [Referência]
- Access Context Manager API [Quickstart] [Referência]
- API de notificações de consultoria [QuickStart] [Referência]
- API da AI do vértice [Quickstart] [Referência]
- API do Alloydb [Quickstart] [Referência]
- API da API Gateway [Quickstart] [Referência]
- Apigee Connect API [Quickstart] [Referência]
- API KEYS API [QuickStart] [Referência]
- API APIM API Admin [Quickstart] [Referência]
- API APP HUB [Quickstart] [Referência]
- API de registro de artefato [Quickstart] [Referência]
- API de ativo em nuvem [Quickstart] [Referência]
- Cargas de trabalho garantidas API [Quickstart] [Referência]
- API do Cloud Automl [Quickstart] [Referência]
- API de backup e Dr. Service [Quickstart] [Referência]
- API da solução bare metal [Quickstart] [Referência]
- API em lote [Quickstart] [Referência]
- BeyondCorp API [Quickstart] [Referência]
- Google Cloud BigQuery [Quickstart] [Referência]
- Google Cloud BigTable [Quickstart] [Referência]
- API do orçamento de cobrança em nuvem [Quickstart] [Referência]
- API de autorização binária [Quickstart] [Referência]
- API do gerente de certificação [QuickStart] [Referência]
- API do canal de nuvem [Quickstart] [Referência]
- API de construção em nuvem [Quickstart] [Referência]
- A API do parceiro controla a nuvem [QuickStart] [referência]
- Cotas da nuvem API [Quickstart] [Referência]
- API de compra de consumidores de comércio em nuvem [Quickstart] [Referência]
- Cloud Composer [Quickstart] [Referência]
- Compute API do mecanismo [Quickstart] [Referência]
- API confidencial de computação [QuickStart] [Referência]
- API do gerente de infraestrutura [Quickstart] [Referência]
- API dos conectores [Quickstart] [Referência]
- API da AI do Centro de Contato API [QuickStart] [Referência]
- API do motor Kubernetes [Quickstart] [Referência]
- API de análise de contêineres [Quickstart] [Referência]
- Documentar a API do Warehouse da AI [Quickstart] [Referência]
- Google Cloud Data Catalog API [Quickstart] [Referência]
- API de fusão de dados em nuvem [Quickstart] [Referência]
- API de migração de banco de dados [Quickstart] [Referência]
- Cloud Dataplex API [QuickStart] [Referência]
- API em nuvem DataProc [QuickStart] [Referência]
- API em nuvem DataStore [QuickStart] [Referência]
- API do DataStream [QuickStart] [Referência]
- API de implantação do Google Cloud [QuickStart] [Referência]
- Desenvolvedor Connect API [Quickstart] [Referência]
- Dialogflow CX API [Quickstart] [Referência]
- DialogFlow ES API [QuickStart] [Referência]
- Discovery Engine API [QuickStart] [Referência]
- API de prevenção de perda de dados em nuvem (DLP) [Quickstart] [Referência]
- Cloud Document API AI [QuickStart] [Referência]
- Domínios da nuvem API [Quickstart] [Referência]
- API de contêiner de borda de nuvem distribuída [Quickstart] [Referência]
- API de rede de arestas de nuvem distribuída [Quickstart] [Referência]
- API de contatos essenciais [Quickstart] [Referência]
- API EventArc [Quickstart] [Referência]
- API da nuvem Filestore [Quickstart] [Referência]
- API de funções em nuvem [Quickstart] [Referência]
- Backup para API do GKE [Quickstart] [Referência]
- Connect Gateway API [Quickstart] [Referência]
- GKE HUB [Quickstart] [Referência]
- API de várias nuvens de Anthos [Quickstart] [Referência]
- Google Cloud IAM [QuickStart] [Referência]
- API de proxy com reconhecimento de identidade em nuvem [Quickstart] [Referência]
- API da nuvem IDS [QuickStart] [Referência]
- API de gerenciamento de chaves em nuvem (KMS) [Quickstart] [Referência]
- API de linguagem natural em nuvem [Quickstart] [Referência]
- Google Cloud Logging [Quickstart] [Referência]
- Serviço gerenciado para API do Microsoft Active Directory [Quickstart] [Referência]
- Serviço gerenciado para Apache Kafka API [Quickstart] [Referência]
- Cloud MemoryStore para Memcached API [Quickstart] [Referência]
- API da Metastore DataProc [QuickStart] [Referência]
- API do Migration Center [Quickstart] [Referência]
- API de monitoramento de nuvem [Quickstart] [Referência]
- API do NetApp [Quickstart] [Referência]
- API de conectividade de rede [Quickstart] [Referência]
- API de gerenciamento de rede [Quickstart] [Referência]
- API de segurança de rede [Quickstart] [Referência]
- API de serviços de rede [Quickstart] [Referência]
- Notebooks API [QuickStart] [Referência]
- OAuth2 Access Token Generation [Quickstart] [Referência]
- API de otimização de nuvem [Quickstart] [Referência]
- API da Política da Organização [Quickstart] [Referência]
- API de configuração do sistema operacional [Quickstart] [Referência]
- API de login do OS Cloud [Quickstart] [Referência]
- API da ParallelStore [Quickstart] [Referência]
- API do simulador de políticas [Quickstart] [Referência]
- Política Solução de problemas da API [QuickStart] [Referência]
- API da Autoridade de Certificação [Quickstart] [Referência]
- API de gerenciador de acesso privilegiado [QuickStart] [Referência]
- API do Profiler Cloud [QuickStart] [Referência]
- API da Autoridade de Certificação Pública [QuickStart] [Referência]
- Google Cloud Pub/Sub [Quickstart] [Referência]
- API de avaliação de migração rápida [Quickstart] [Referência]
- Recaptcha Enterprise API [Quickstart] [Referência]
- Recomendador [Quickstart] [Referência]
- Google Cloud MemoryStore para Redis API [Quickstart] [Referência]
- API do gerenciador de recursos em nuvem [Quickstart] [Referência]
- Configurações de recursos API [QuickStart] [Referência]
- API de varejo [Quickstart] [Referência]
- Cloud Run Api Admin [Quickstart] [Referência]
- API do agendador de nuvem [Quickstart] [Referência]
- API do gerente secreto [Quickstart] [Referência]
- API de gerente de fonte segura [Quickstart] [Referência]
- API do Centro de Comando de Segurança [QuickStart] [Referência]
- API de gerenciamento de centro de segurança [Quickstart] [Referência]
- API de controle de serviço [Quickstart] [Referência]
- API do diretório de serviços [Quickstart] [Referência]
- API de saúde de serviço [Quickstart] [Referência]
- API de gerenciamento de serviços [Quickstart] [Referência]
- API de uso de serviço [Quickstart] [Referência]
- API da Cloud Shell [Quickstart] [Referência]
- Google Cloud Spanner [Quickstart] [Referência]
- API de fala para texto em nuvem [Quickstart] [Referência]
- API de administrador SQL em nuvem [QuickStart] [Referência]
- Google Cloud Storage [Quickstart] [Referência]
- API de controle de armazenamento [Quickstart] [Referência]
- API de insights de armazenamento [Quickstart] [Referência]
- API de transferência de armazenamento [Quickstart] [Referência]
- API de suporte ao Google Cloud [Quickstart] [Referência]
- API da solução de talento em nuvem [Quickstart] [Referência]
- API de tarefas em nuvem [QuickStart] [Referência]
- API de automação de telco [QuickStart] [Referência]
- API de texto para fala em nuvem [Quickstart] [Referência]
- TimeSeries Insights API [QuickStart] [Referência]
- Cloud TPU API [QuickStart] [Referência]
- Cloud Trace API [Quickstart] [Referência]
- API de tradução em nuvem [Quickstart] [Referência]
- Serviços de vídeo [Quickstart] [Referência]
- API de inteligência de vídeo em nuvem [Quickstart] [Referência]
- Cloud Vision API [Quickstart] [Referência]
- API de migração da VM [Quickstart] [Referência]
- API do mecanismo VMware [QuickStart] [Referência]
- API de acesso a VPC sem servidor [Quickstart] [Referência]
- API de risco da Web [Quickstart] [Referência]
- API do Scanner de Segurança da Web [Quickstart] [Referência]
- API de execução de fluxo de trabalho [QuickStart] [Referência]
- API de estações de trabalho em nuvem [Quickstart] [Referência]
Construção e instalação
Este é um guia rápido para desenvolvedores que desejam compilar as bibliotecas e executar os exemplos incluídos nas bibliotecas.
- Os mantenedores de embalagem ou desenvolvedores que preferem instalar a biblioteca em um diretório fixo (como
/usr/local
ou /opt
) devem consultar o guia de embalagem. - Os desenvolvedores que preferem usar um gerente de pacotes como o VCPKG ou o CONDA devem seguir as instruções para o gerenciador de pacotes.
- Os desenvolvedores que desejam usar as bibliotecas como parte de um projeto CMake ou Bazel maiores devem consultar os guias do QuickStart para a biblioteca ou bibliotecas que desejam usar.
- Os desenvolvedores que desejam compilar a biblioteca apenas para executar alguns exemplos ou testes devem ler o documento atual.
- Colaboradores e desenvolvedores do
google-cloud-cpp
devem consultar o guia para configurar uma estação de trabalho de desenvolvimento.
Construção com Bazel
Esta biblioteca requer Bazel> = 6.0. No diretório de nível superior, execute os comandos usuais.
Construção com cmake
Esta biblioteca requer cmake> = 3.10. Se você planeja instalar as bibliotecas, consulte o guia de embalagem, essas instruções não produzirão artefatos que você pode colocar /usr/local
ou compartilhar com seus colegas.
Do diretório de nível superior do google-cloud-cpp
execute estes comandos:
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 )
Os artefatos binários, como exemplos, serão colocados em cmake-out/
.
Apoiar
- Este projeto segue a política fundamental de suporte de C ++ do Google, resumida na matriz de suporte fundamental de C ++.
- Versão do idioma (> = C ++ 14).
- Sistemas operacionais: Windows, MacOS e Linux.
- Sistemas de construção: Bazel (> = 6.0), cmake (> = 3.10).
- Compiladores: GCC (> = 7,5), Clang (> = 6.0), MSVC (> = 2022), Apple Clang (> = 12).
- Este projeto usa dependências descritas em doc/embalagem.md.
- Este projeto funciona com ou sem exceções ativadas.
- Este projeto corta lançamentos mensais com notas de lançamento detalhadas.
API pública e mudanças de quebra de API
Este projeto segue a política de mudança da biblioteca OSS do Google.
Em geral, evitamos fazer mudanças incompatíveis com antecedência em nossa API pública. Às vezes, essas mudanças produzem benefícios para nossos clientes, na forma de melhor desempenho, APIs mais fáceis de entender e/ou APIs mais consistentes entre os serviços. Quando esses benefícios o justificarem, nós iremos:
- Anuncie essas mudanças com destaque em nosso arquivo
CHANGELOG.md
e nas notas da versão afetada. - Aumente a versão principal do
google-cloud-cpp
.
No entanto, embora tenhamos esforços comercialmente razoáveis para impedir isso, é possível que as mudanças incompatíveis com antecedência não sejam detectadas e, portanto, sem documentos. Pedimos desculpas se esse for o caso e receber feedback ou relatórios de bugs para corrigir o problema.
Contate-nos
- Discussões do Github - Para perguntas e comentários gerais
- Problemas do GitHub - para relatar bugs e solicitações de recursos
Mudanças contribuindo
Consulte CONTRIBUTING.md
para obter detalhes sobre como contribuir para este projeto, incluindo como criar e testar suas alterações, bem como como formatar adequadamente seu código.
Licenciamento
Apache 2.0; Consulte LICENSE
para obter detalhes.