Skip to content

Commit 0fd61a4

Browse files
authored
feat: [kmsinventory] new module for kmsinventory (#9162)
* feat: [kmsinventory] new module for kmsinventory * chore: add google-cloud-kms dependency * chore: update added dependency to proto-google-cloud-kms-v1 * chore: add dependency also to proto-google-cloud-kmsinventory-v1 pom * chore: add version update annotations in readme
1 parent c4f8231 commit 0fd61a4

File tree

88 files changed

+20463
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

88 files changed

+20463
-0
lines changed

gapic-libraries-bom/pom.xml

+7
Original file line numberDiff line numberDiff line change
@@ -588,6 +588,13 @@
588588
<type>pom</type>
589589
<scope>import</scope>
590590
</dependency>
591+
<dependency>
592+
<groupId>com.google.cloud</groupId>
593+
<artifactId>google-cloud-kmsinventory-bom</artifactId>
594+
<version>0.0.1-SNAPSHOT</version><!-- {x-version-update:google-cloud-kmsinventory:current} -->
595+
<type>pom</type>
596+
<scope>import</scope>
597+
</dependency>
591598
<dependency>
592599
<groupId>com.google.cloud</groupId>
593600
<artifactId>google-cloud-language-bom</artifactId>

java-kmsinventory/.OwlBot.yaml

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# Copyright 2022 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
16+
deep-remove-regex:
17+
- "/java-kmsinventory/grpc-google-.*/src"
18+
- "/java-kmsinventory/proto-google-.*/src"
19+
- "/java-kmsinventory/google-.*/src"
20+
- "/java-kmsinventory/samples/snippets/generated"
21+
22+
deep-preserve-regex:
23+
- "/java-kmsinventory/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java"
24+
25+
deep-copy-regex:
26+
- source: "/google/cloud/kms/inventory/(v.*)/.*-java/proto-google-.*/src"
27+
dest: "/owl-bot-staging/java-kmsinventory/$1/proto-google-cloud-kmsinventory-$1/src"
28+
- source: "/google/cloud/kms/inventory/(v.*)/.*-java/grpc-google-.*/src"
29+
dest: "/owl-bot-staging/java-kmsinventory/$1/grpc-google-cloud-kmsinventory-$1/src"
30+
- source: "/google/cloud/kms/inventory/(v.*)/.*-java/gapic-google-.*/src"
31+
dest: "/owl-bot-staging/java-kmsinventory/$1/google-cloud-kmsinventory/src"
32+
- source: "/google/cloud/kms/inventory/(v.*)/.*-java/samples/snippets/generated"
33+
dest: "/owl-bot-staging/java-kmsinventory/$1/samples/snippets/generated"
34+
35+
36+
api-name: kmsinventory

java-kmsinventory/.repo-metadata.json

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"api_shortname": "kmsinventory",
3+
"name_pretty": "KMS Inventory API",
4+
"product_documentation": "https://cloud.google.com/kms/docs/",
5+
"api_description": "KMS Inventory API.",
6+
"client_documentation": "https://cloud.google.com/java/docs/reference/google-cloud-kmsinventory/latest/overview",
7+
"release_level": "preview",
8+
"transport": "grpc",
9+
"language": "java",
10+
"repo": "googleapis/java-kmsinventory",
11+
"repo_short": "java-kmsinventory",
12+
"distribution_name": "com.google.cloud:google-cloud-kmsinventory",
13+
"api_id": "kmsinventory.googleapis.com",
14+
"library_type": "GAPIC_AUTO",
15+
"requires_billing": true
16+
}

java-kmsinventory/README.md

+203
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,203 @@
1+
# Google KMS Inventory API Client for Java
2+
3+
Java idiomatic client for [KMS Inventory API][product-docs].
4+
5+
[![Maven][maven-version-image]][maven-version-link]
6+
![Stability][stability-image]
7+
8+
- [Product Documentation][product-docs]
9+
- [Client Library Documentation][javadocs]
10+
11+
> Note: This client is a work-in-progress, and may occasionally
12+
> make backwards-incompatible changes.
13+
14+
15+
## Quickstart
16+
17+
18+
If you are using Maven, add this to your pom.xml file:
19+
20+
<!--- {x-version-update-start:google-cloud-kmsinventory:released} -->
21+
22+
```xml
23+
<dependency>
24+
<groupId>com.google.cloud</groupId>
25+
<artifactId>google-cloud-kmsinventory</artifactId>
26+
<version>0.0.0</version>
27+
</dependency>
28+
```
29+
30+
If you are using Gradle without BOM, add this to your dependencies:
31+
32+
```Groovy
33+
implementation 'com.google.cloud:google-cloud-kmsinventory:0.0.0'
34+
```
35+
36+
If you are using SBT, add this to your dependencies:
37+
38+
```Scala
39+
libraryDependencies += "com.google.cloud" % "google-cloud-kmsinventory" % "0.0.0"
40+
```
41+
<!--- {x-version-update-end} -->
42+
43+
## Authentication
44+
45+
See the [Authentication][authentication] section in the base directory's README.
46+
47+
## Authorization
48+
49+
The client application making API calls must be granted [authorization scopes][auth-scopes] required for the desired KMS Inventory API APIs, and the authenticated principal must have the [IAM role(s)][predefined-iam-roles] required to access GCP resources using the KMS Inventory API API calls.
50+
51+
## Getting Started
52+
53+
### Prerequisites
54+
55+
You will need a [Google Cloud Platform Console][developer-console] project with the KMS Inventory API [API enabled][enable-api].
56+
You will need to [enable billing][enable-billing] to use Google KMS Inventory API.
57+
[Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
58+
[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
59+
`gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
60+
61+
### Installation and setup
62+
63+
You'll need to obtain the `google-cloud-kmsinventory` library. See the [Quickstart](#quickstart) section
64+
to add `google-cloud-kmsinventory` as a dependency in your code.
65+
66+
## About KMS Inventory API
67+
68+
69+
[KMS Inventory API][product-docs] KMS Inventory API.
70+
71+
See the [KMS Inventory API client library docs][javadocs] to learn how to
72+
use this KMS Inventory API Client Library.
73+
74+
75+
76+
77+
78+
79+
## Troubleshooting
80+
81+
To get help, follow the instructions in the [shared Troubleshooting document][troubleshooting].
82+
83+
## Transport
84+
85+
KMS Inventory API uses gRPC for the transport layer.
86+
87+
## Supported Java Versions
88+
89+
Java 8 or above is required for using this client.
90+
91+
Google's Java client libraries,
92+
[Google Cloud Client Libraries][cloudlibs]
93+
and
94+
[Google Cloud API Libraries][apilibs],
95+
follow the
96+
[Oracle Java SE support roadmap][oracle]
97+
(see the Oracle Java SE Product Releases section).
98+
99+
### For new development
100+
101+
In general, new feature development occurs with support for the lowest Java
102+
LTS version covered by Oracle's Premier Support (which typically lasts 5 years
103+
from initial General Availability). If the minimum required JVM for a given
104+
library is changed, it is accompanied by a [semver][semver] major release.
105+
106+
Java 11 and (in September 2021) Java 17 are the best choices for new
107+
development.
108+
109+
### Keeping production systems current
110+
111+
Google tests its client libraries with all current LTS versions covered by
112+
Oracle's Extended Support (which typically lasts 8 years from initial
113+
General Availability).
114+
115+
#### Legacy support
116+
117+
Google's client libraries support legacy versions of Java runtimes with long
118+
term stable libraries that don't receive feature updates on a best efforts basis
119+
as it may not be possible to backport all patches.
120+
121+
Google provides updates on a best efforts basis to apps that continue to use
122+
Java 7, though apps might need to upgrade to current versions of the library
123+
that supports their JVM.
124+
125+
#### Where to find specific information
126+
127+
The latest versions and the supported Java versions are identified on
128+
the individual GitHub repository `github.com/GoogleAPIs/java-SERVICENAME`
129+
and on [google-cloud-java][g-c-j].
130+
131+
## Versioning
132+
133+
134+
This library follows [Semantic Versioning](http://semver.org/).
135+
136+
137+
It is currently in major version zero (``0.y.z``), which means that anything may change at any time
138+
and the public API should not be considered stable.
139+
140+
141+
## Contributing
142+
143+
144+
Contributions to this library are always welcome and highly encouraged.
145+
146+
See [CONTRIBUTING][contributing] for more information how to get started.
147+
148+
Please note that this project is released with a Contributor Code of Conduct. By participating in
149+
this project you agree to abide by its terms. See [Code of Conduct][code-of-conduct] for more
150+
information.
151+
152+
153+
## License
154+
155+
Apache 2.0 - See [LICENSE][license] for more information.
156+
157+
## CI Status
158+
159+
Java Version | Status
160+
------------ | ------
161+
Java 8 | [![Kokoro CI][kokoro-badge-image-2]][kokoro-badge-link-2]
162+
Java 8 OSX | [![Kokoro CI][kokoro-badge-image-3]][kokoro-badge-link-3]
163+
Java 8 Windows | [![Kokoro CI][kokoro-badge-image-4]][kokoro-badge-link-4]
164+
Java 11 | [![Kokoro CI][kokoro-badge-image-5]][kokoro-badge-link-5]
165+
166+
Java is a registered trademark of Oracle and/or its affiliates.
167+
168+
[product-docs]: https://cloud.google.com/kms/docs/
169+
[javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-kmsinventory/latest/overview
170+
[kokoro-badge-image-1]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java7.svg
171+
[kokoro-badge-link-1]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java7.html
172+
[kokoro-badge-image-2]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java8.svg
173+
[kokoro-badge-link-2]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java8.html
174+
[kokoro-badge-image-3]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java8-osx.svg
175+
[kokoro-badge-link-3]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java8-osx.html
176+
[kokoro-badge-image-4]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java8-win.svg
177+
[kokoro-badge-link-4]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java8-win.html
178+
[kokoro-badge-image-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java11.svg
179+
[kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-kmsinventory/java11.html
180+
[stability-image]: https://img.shields.io/badge/stability-preview-yellow
181+
[maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-kmsinventory.svg
182+
[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-kmsinventory&core=gav
183+
[authentication]: https://github.com/googleapis/google-cloud-java#authentication
184+
[auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
185+
[predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
186+
[iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
187+
[developer-console]: https://console.developers.google.com/
188+
[create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
189+
[cloud-sdk]: https://cloud.google.com/sdk/
190+
[troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
191+
[contributing]: https://github.com/googleapis/java-kmsinventory/blob/main/CONTRIBUTING.md
192+
[code-of-conduct]: https://github.com/googleapis/java-kmsinventory/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
193+
[license]: https://github.com/googleapis/java-kmsinventory/blob/main/LICENSE
194+
[enable-billing]: https://cloud.google.com/apis/docs/getting-started#enabling_billing
195+
[enable-api]: https://console.cloud.google.com/flows/enableapi?apiid=kmsinventory.googleapis.com
196+
[libraries-bom]: https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM
197+
[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png
198+
199+
[semver]: https://semver.org/
200+
[cloudlibs]: https://cloud.google.com/apis/docs/client-libraries-explained
201+
[apilibs]: https://cloud.google.com/apis/docs/client-libraries-explained#google_api_client_libraries
202+
[oracle]: https://www.oracle.com/java/technologies/java-se-support-roadmap.html
203+
[g-c-j]: http://github.com/googleapis/google-cloud-java
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<?xml version="1.0"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3+
<modelVersion>4.0.0</modelVersion>
4+
<groupId>com.google.cloud</groupId>
5+
<artifactId>google-cloud-kmsinventory-bom</artifactId>
6+
<version>0.0.1-SNAPSHOT</version><!-- {x-version-update:google-cloud-kmsinventory:current} -->
7+
<packaging>pom</packaging>
8+
9+
<parent>
10+
<groupId>com.google.cloud</groupId>
11+
<artifactId>google-cloud-pom-parent</artifactId>
12+
<version>1.6.0-SNAPSHOT</version><!-- {x-version-update:google-cloud-java:current} -->
13+
<relativePath>../../google-cloud-pom-parent/pom.xml</relativePath>
14+
</parent>
15+
16+
<name>Google KMS Inventory API BOM</name>
17+
<description>
18+
BOM for KMS Inventory API
19+
</description>
20+
21+
<properties>
22+
<maven.antrun.skip>true</maven.antrun.skip>
23+
</properties>
24+
25+
<dependencyManagement>
26+
<dependencies>
27+
<dependency>
28+
<groupId>com.google.cloud</groupId>
29+
<artifactId>google-cloud-kmsinventory</artifactId>
30+
<version>0.0.1-SNAPSHOT</version><!-- {x-version-update:google-cloud-kmsinventory:current} -->
31+
</dependency>
32+
<dependency>
33+
<groupId>com.google.api.grpc</groupId>
34+
<artifactId>grpc-google-cloud-kmsinventory-v1</artifactId>
35+
<version>0.0.1-SNAPSHOT</version><!-- {x-version-update:grpc-google-cloud-kmsinventory-v1:current} -->
36+
</dependency>
37+
<dependency>
38+
<groupId>com.google.api.grpc</groupId>
39+
<artifactId>proto-google-cloud-kmsinventory-v1</artifactId>
40+
<version>0.0.1-SNAPSHOT</version><!-- {x-version-update:proto-google-cloud-kmsinventory-v1:current} -->
41+
</dependency>
42+
</dependencies>
43+
</dependencyManagement>
44+
</project>

0 commit comments

Comments
 (0)