Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions third_party/googleapis/.bazelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# To make proto_library rules to include source info in the descriptor
build --protocopt=--include_source_info
2 changes: 1 addition & 1 deletion third_party/googleapis/.circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
working_directory: /var/code/googleapis/
smoke-all:
docker:
- image: googleapis/artman:stable
- image: googleapis/artman:latest
steps:
- checkout
- run:
Expand Down
7 changes: 7 additions & 0 deletions third_party/googleapis/.cloudbuild/Dockerfile.bazel-gapic
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
FROM gcr.io/cloud-builders/bazel

RUN apt-get update && apt-get install -y \
zip \
libxml2-dev \
build-essential

20 changes: 20 additions & 0 deletions third_party/googleapis/.cloudbuild/cloudbuild.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
steps:
- name: 'gcr.io/cloud-builders/docker'
args: ['build', '-f', '.cloudbuild/Dockerfile.bazel-gapic', '-t', 'bazel-gapic', '.']
- name: 'bazel-gapic'
args: ['build', '--remote_http_cache=https://storage.googleapis.com/$PROJECT_ID-cloud-build-artifacts/$REPO_NAME/bazel-remote-cache', '--google_default_credentials', '//:gapic-cloud-build']
- name: 'ubuntu'
args: ['mkdir', 'gapic-cloud-build']
- name: 'ubuntu'
args: ['tar', '-xf', 'bazel-bin/gapic-cloud-build.tar', '-C', 'gapic-cloud-build']
- name: 'gcr.io/cloud-builders/gsutil'
args: ['-m', 'cp', '-r', 'gapic-cloud-build', 'gs://$PROJECT_ID-cloud-build-artifacts/$REPO_NAME/$COMMIT_SHA/gapic-cloud-build']
- name: 'ubuntu'
args: ['bash', './.cloudbuild/write-latest.sh', '$COMMIT_SHA']
artifacts:
objects:
location: 'gs://$PROJECT_ID-cloud-build-artifacts/$REPO_NAME/'
paths:
- 'cloud_build_latest'
options:
machineType: 'N1_HIGHCPU_32'
3 changes: 3 additions & 0 deletions third_party/googleapis/.cloudbuild/write-latest.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/bash

echo $1 > cloud_build_latest
1 change: 1 addition & 0 deletions third_party/googleapis/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ google/internal
google/protobuf
.project
artman-genfiles/
bazel-*
1 change: 0 additions & 1 deletion third_party/googleapis/BUILD

This file was deleted.

129 changes: 129 additions & 0 deletions third_party/googleapis/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
load("@bazel_tools//tools/build_defs/pkg:pkg.bzl", "pkg_tar")

# Target used by Cloud Build to build GAPIC libraries.
# To find all available rules, use:
# $ grep -Er '\-(java|go|php)"'
pkg_tar(
name = 'gapic-cloud-build',
deps = [
'//google/api/expr/v1alpha1:gapi-cloud-cel-v1alpha1-go',
'//google/api/expr/v1alpha1:google-cloud-cel-v1alpha1-java',
'//google/bigtable/admin/v2:gapi-cloud-bigtableadmin-v2-go',
'//google/bigtable/admin/v2:google-cloud-bigtable-admin-v2-java',
'//google/bigtable/v2:gapi-cloud-bigtable-v2-go',
'//google/bigtable/v2:google-cloud-bigtable-v2-java',
'//google/cloud/asset/v1beta1:gapi-cloud-asset-v1beta1-go',
'//google/cloud/asset/v1beta1:google-cloud-asset-v1beta1-java',
'//google/cloud/automl/v1beta1:gapi-cloud-automl-v1beta1-go',
'//google/cloud/automl/v1beta1:google-cloud-automl-v1beta1-java',
'//google/cloud/bigquery/datatransfer/v1:gapi-cloud-bigquerydatatransfer-v1-go',
'//google/cloud/bigquery/datatransfer/v1:google-cloud-bigquerydatatransfer-v1-java',
'//google/cloud/bigquery/storage/v1beta1:gapi-cloud-bigquerystorage-v1-go',
'//google/cloud/bigquery/storage/v1beta1:google-cloud-bigquerystorage-v1-java',
'//google/cloud/dataproc/v1beta2:gapi-cloud-dataproc-v1beta2-go',
'//google/cloud/dataproc/v1beta2:google-cloud-dataproc-v1beta2-java',
'//google/cloud/dataproc/v1:gapi-cloud-dataproc-v1-go',
'//google/cloud/dataproc/v1:google-cloud-dataproc-v1-java',
'//google/cloud/dialogflow/v2beta1:gapi-cloud-dialogflow-v2beta1-go',
'//google/cloud/dialogflow/v2beta1:google-cloud-dialogflow-v2beta1-java',
'//google/cloud/dialogflow/v2:gapi-cloud-dialogflow-v2-go',
'//google/cloud/dialogflow/v2:google-cloud-dialogflow-v2-java',
'//google/cloud/dialogflow/v2:google-cloud-dialogflow-v2-php',
'//google/cloud/iot/v1:gapi-cloud-iot-v1-go',
'//google/cloud/iot/v1:google-cloud-iot-v1-java',
'//google/cloud/kms/v1:gapi-cloud-kms-v1-go',
'//google/cloud/kms/v1:google-cloud-kms-v1-java',
'//google/cloud/language/v1beta2:gapi-cloud-language-v1beta2-go',
'//google/cloud/language/v1beta2:google-cloud-language-v1beta2-java',
'//google/cloud/language/v1:gapi-cloud-language-v1-go',
'//google/cloud/language/v1:google-cloud-language-v1-java',
'//google/cloud/language/v1:google-cloud-language-v1-php',
'//google/cloud/oslogin/v1beta:gapi-cloud-oslogin-v1beta-go',
'//google/cloud/oslogin/v1beta:google-cloud-oslogin-v1beta-java',
'//google/cloud/oslogin/v1:gapi-cloud-oslogin-v1-go',
'//google/cloud/oslogin/v1:google-cloud-oslogin-v1-java',
'//google/cloud/redis/v1beta1:gapi-cloud-redis-v1beta1-go',
'//google/cloud/redis/v1beta1:google-cloud-redis-v1beta1-java',
'//google/cloud/redis/v1:gapi-cloud-redis-v1-go',
'//google/cloud/redis/v1:google-cloud-redis-v1-java',
'//google/cloud/scheduler/v1beta1:gapi-cloud-scheduler-v1beta1-go',
'//google/cloud/scheduler/v1beta1:google-cloud-scheduler-v1beta1-java',
'//google/cloud/securitycenter/v1beta1:gapi-cloud-securitycenter-v1beta1-go',
'//google/cloud/securitycenter/v1beta1:google-cloud-securitycenter-v1beta1-java',
'//google/cloud/speech/v1:gapi-cloud-speech-v1-go',
'//google/cloud/speech/v1:google-cloud-speech-v1-java',
'//google/cloud/speech/v1p1beta1:gapi-cloud-speech-v1p1beta1-go',
'//google/cloud/speech/v1p1beta1:google-cloud-speech-v1p1beta1-java',
'//google/cloud/tasks/v2beta2:gapi-cloud-tasks-v2beta2-go',
'//google/cloud/tasks/v2beta2:google-cloud-tasks-v2beta2-java',
'//google/cloud/tasks/v2beta3:gapi-cloud-tasks-v2beta3-go',
'//google/cloud/tasks/v2beta3:google-cloud-tasks-v2beta3-java',
'//google/cloud/texttospeech/v1beta1:gapi-cloud-texttospeech-v1beta1-go',
'//google/cloud/texttospeech/v1beta1:google-cloud-texttospeech-v1beta1-java',
'//google/cloud/texttospeech/v1:gapi-cloud-texttospeech-v1-go',
'//google/cloud/texttospeech/v1:google-cloud-texttospeech-v1-java',
'//google/cloud/videointelligence/v1beta1:gapi-cloud-video-intelligence-v1beta1-go',
'//google/cloud/videointelligence/v1beta1:google-cloud-video-intelligence-v1beta1-java',
'//google/cloud/videointelligence/v1beta2:gapi-cloud-video-intelligence-v1beta2-go',
'//google/cloud/videointelligence/v1beta2:google-cloud-video-intelligence-v1beta2-java',
'//google/cloud/videointelligence/v1:gapi-cloud-video-intelligence-v1-go',
'//google/cloud/videointelligence/v1:google-cloud-video-intelligence-v1-java',
'//google/cloud/videointelligence/v1p1beta1:gapi-cloud-video-intelligence-v1p1beta1-go',
'//google/cloud/videointelligence/v1p1beta1:google-cloud-video-intelligence-v1p1beta1-java',
'//google/cloud/videointelligence/v1p2beta1:gapi-cloud-video-intelligence-v1p2beta1-go',
'//google/cloud/videointelligence/v1p2beta1:google-cloud-video-intelligence-v1p2beta1-java',
'//google/cloud/videointelligence/v1p3beta1:gapi-cloud-video-intelligence-v1p3beta1-go',
'//google/cloud/vision/v1:gapi-cloud-vision-v1-go',
'//google/cloud/vision/v1:google-cloud-vision-v1-java',
'//google/cloud/vision/v1p1beta1:gapi-cloud-vision-v1p1beta1-go',
'//google/cloud/vision/v1p1beta1:google-cloud-vision-v1p1beta1-java',
'//google/cloud/vision/v1p2beta1:gapi-cloud-vision-v1p2beta1-go',
'//google/cloud/vision/v1p2beta1:google-cloud-vision-v1p2beta1-java',
'//google/cloud/vision/v1p3beta1:gapi-cloud-vision-v1p3beta1-go',
'//google/cloud/vision/v1p3beta1:google-cloud-vision-v1p3beta1-java',
'//google/cloud/vision/v1p4beta1:gapi-cloud-vision-v1p4beta1-go',
'//google/cloud/vision/v1p4beta1:google-cloud-vision-v1p4beta1-java',
'//google/cloud/websecurityscanner/v1alpha:gapi-cloud-websecurityscanner-v1alpha-go',
'//google/cloud/websecurityscanner/v1alpha:google-cloud-websecurityscanner-v1alpha-java',
'//google/container/v1:gapi-cloud-container-v1-go',
'//google/container/v1:google-cloud-container-v1-java',
'//google/datastore/v1:gapi-cloud-datastore-v1-go',
'//google/datastore/v1:google-cloud-datastore-v1-java',
'//google/devtools/clouddebugger/v2:gapi-cloud-debugger-v2-go',
'//google/devtools/clouddebugger/v2:google-cloud-debugger-v2-java',
'//google/devtools/clouderrorreporting/v1beta1:gapi-cloud-error-reporting-v1beta1-go',
'//google/devtools/clouderrorreporting/v1beta1:google-cloud-error-reporting-v1beta1-java',
'//google/devtools/cloudtrace/v1:gapi-cloud-trace-v1-go',
'//google/devtools/cloudtrace/v1:google-cloud-trace-v1-java',
'//google/devtools/cloudtrace/v2:gapi-cloud-trace-v2-go',
'//google/devtools/cloudtrace/v2:google-cloud-trace-v2-java',
'//google/devtools/containeranalysis/v1beta1:gapi-cloud-containeranalysis-v1-go',
'//google/devtools/containeranalysis/v1beta1:google-cloud-containeranalysis-v1-java',
'//google/devtools/source/v1:gapi-cloud-source-v1-go',
'//google/example/library/v1:gapi-cloud-library-v1-go',
'//google/example/library/v1:google-cloud-library-v1-java',
'//google/firestore/v1beta1:gapi-cloud-firestore-v1beta1-go',
'//google/firestore/v1beta1:google-cloud-firestore-v1beta1-java',
'//google/iam/admin/v1:gapi-cloud-iam-admin-v1-go',
'//google/iam/credentials/v1:gapi-cloud-iamcredentials-v1-go',
'//google/iam/credentials/v1:google-cloud-iamcredentials-v1-java',
'//google/iam/v1:gapi-cloud-iam-v1-go',
'//google/iam/v1/logging:gapi-cloud-iam-admin-go',
'//google/logging/v2:gapi-cloud-logging-v2-go',
'//google/logging/v2:google-cloud-logging-v2-java',
'//google/longrunning:gapi-cloud-longrunning-go',
'//google/monitoring/v3:gapi-cloud-monitoring-v3-go',
'//google/monitoring/v3:google-cloud-monitoring-v3-java',
'//google/privacy/dlp/v2:gapi-cloud-dlp-v2-go',
'//google/privacy/dlp/v2:google-cloud-dlp-v2-java',
'//google/pubsub/v1:gapi-cloud-pubsub-v1-go',
'//google/pubsub/v1:google-cloud-pubsub-v1-java',
'//google/pubsub/v1:google-cloud-pubsub-v1-php',
'//google/spanner/admin/database/v1:gapi-cloud-spanner-admin-database-v1-go',
'//google/spanner/admin/database/v1:google-cloud-spanner-admin-database-v1-java',
'//google/spanner/admin/instance/v1:gapi-cloud-spanner-admin-instance-v1-go',
'//google/spanner/admin/instance/v1:google-cloud-spanner-admin-instance-v1-java',
'//google/spanner/v1:gapi-cloud-spanner-v1-go',
'//google/spanner/v1:google-cloud-spanner-v1-java',
]
)
44 changes: 44 additions & 0 deletions third_party/googleapis/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,55 @@ Google APIs and help you to utilize them more efficiently. You can also
use these definitions with open source tools to generate client
libraries, documentation, and other artifacts.

## Building
### Bazel

The recommended way to build the API client libraries is through
[Bazel](https://bazel.build/) >= 0.23.0.

First, [install bazel](https://docs.bazel.build/versions/master/install.html).

To build all libraries:

```
bazel build //...
```

To test all libraries:

```
bazel test //...
```

To build one library in all languages:

```
bazel build //google/example/library/v1/...
```

To build the Java package for one library:

```
bazel build //google/example/library/v1:google-cloud-library-v1-java
```

Bazel packages exist in all the libraries for Java and Go.

### Artman

API client libraries can be built directly from files in this repo using
[Artman](https://github.com/googleapis/artman). The latest generation status can
be tracked [here](https://circleci.com/gh/googleapis/googleapis) which currently
has status [![CircleCI](https://circleci.com/gh/googleapis/googleapis.svg?style=svg)](https://circleci.com/gh/googleapis/googleapis).

To build the Java package for one library:

```
artman --config google/example/library/artman_library_example_v1.yaml generate java_gapic
```

Artman can only build one library in one language at a time.

For more details on all Google APIs and developer tools, see the [Google
Developers](https://developers.google.com/products/) site.

Expand Down
Loading