vagrant-unbundled 2.3.2.0 → 2.3.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/Gemfile.lock +12 -12
  4. data/LICENSE +1 -3
  5. data/lib/vagrant/errors.rb +4 -0
  6. data/lib/vagrant/util/install_cli_autocomplete.rb +3 -3
  7. data/lib/vagrant.rb +0 -3
  8. data/pkg/vagrant-unbundled-2.3.2.0.gem +0 -0
  9. data/plugins/commands/serve/command.rb +1 -1
  10. data/plugins/guests/solaris/cap/remove_public_key.rb +2 -2
  11. data/plugins/hosts/gentoo/host.rb +1 -1
  12. data/plugins/hosts/slackware/host.rb +1 -1
  13. data/plugins/providers/virtualbox/action/network.rb +8 -5
  14. data/plugins/providers/virtualbox/driver/base.rb +3 -1
  15. data/plugins/providers/virtualbox/driver/version_5_0.rb +40 -36
  16. data/plugins/providers/virtualbox/driver/version_7_0.rb +223 -5
  17. data/plugins/provisioners/ansible/cap/guest/debian/ansible_install.rb +1 -1
  18. data/plugins/provisioners/ansible/provisioner/host.rb +1 -1
  19. data/plugins/provisioners/chef/config/chef_zero.rb +1 -1
  20. data/plugins/synced_folders/rsync/helper.rb +1 -0
  21. data/templates/locales/en.yml +4 -0
  22. data/thirdparty/proto/api-common-protos/.bazelrc +2 -0
  23. data/thirdparty/proto/api-common-protos/.git +1 -0
  24. data/thirdparty/proto/api-common-protos/.gitignore +11 -0
  25. data/thirdparty/proto/api-common-protos/BUILD.bazel +129 -0
  26. data/thirdparty/proto/api-common-protos/CODE_OF_CONDUCT.md +43 -0
  27. data/thirdparty/proto/api-common-protos/CONTRIBUTING.md +42 -0
  28. data/thirdparty/proto/api-common-protos/Dockerfile +18 -0
  29. data/thirdparty/proto/api-common-protos/LICENSE +201 -0
  30. data/thirdparty/proto/api-common-protos/README.md +113 -0
  31. data/thirdparty/proto/api-common-protos/SECURITY.md +7 -0
  32. data/thirdparty/proto/api-common-protos/WORKSPACE +154 -0
  33. data/thirdparty/proto/api-common-protos/google/api/BUILD.bazel +246 -0
  34. data/thirdparty/proto/api-common-protos/google/api/README.md +46 -0
  35. data/thirdparty/proto/api-common-protos/google/api/annotations.proto +31 -0
  36. data/thirdparty/proto/api-common-protos/google/api/auth.proto +181 -0
  37. data/thirdparty/proto/api-common-protos/google/api/backend.proto +51 -0
  38. data/thirdparty/proto/api-common-protos/google/api/billing.proto +67 -0
  39. data/thirdparty/proto/api-common-protos/google/api/client.proto +99 -0
  40. data/thirdparty/proto/api-common-protos/google/api/config_change.proto +85 -0
  41. data/thirdparty/proto/api-common-protos/google/api/consumer.proto +83 -0
  42. data/thirdparty/proto/api-common-protos/google/api/context.proto +63 -0
  43. data/thirdparty/proto/api-common-protos/google/api/control.proto +33 -0
  44. data/thirdparty/proto/api-common-protos/google/api/distribution.proto +213 -0
  45. data/thirdparty/proto/api-common-protos/google/api/documentation.proto +157 -0
  46. data/thirdparty/proto/api-common-protos/google/api/endpoint.proto +71 -0
  47. data/thirdparty/proto/api-common-protos/google/api/field_behavior.proto +84 -0
  48. data/thirdparty/proto/api-common-protos/google/api/http.proto +318 -0
  49. data/thirdparty/proto/api-common-protos/google/api/httpbody.proto +76 -0
  50. data/thirdparty/proto/api-common-protos/google/api/label.proto +49 -0
  51. data/thirdparty/proto/api-common-protos/google/api/launch_stage.proto +67 -0
  52. data/thirdparty/proto/api-common-protos/google/api/log.proto +55 -0
  53. data/thirdparty/proto/api-common-protos/google/api/logging.proto +83 -0
  54. data/thirdparty/proto/api-common-protos/google/api/metric.proto +192 -0
  55. data/thirdparty/proto/api-common-protos/google/api/monitored_resource.proto +116 -0
  56. data/thirdparty/proto/api-common-protos/google/api/monitoring.proto +89 -0
  57. data/thirdparty/proto/api-common-protos/google/api/quota.proto +259 -0
  58. data/thirdparty/proto/api-common-protos/google/api/resource.proto +299 -0
  59. data/thirdparty/proto/api-common-protos/google/api/routing.proto +461 -0
  60. data/thirdparty/proto/api-common-protos/google/api/service.proto +175 -0
  61. data/thirdparty/proto/api-common-protos/google/api/source_info.proto +32 -0
  62. data/thirdparty/proto/api-common-protos/google/api/system_parameter.proto +96 -0
  63. data/thirdparty/proto/api-common-protos/google/api/usage.proto +92 -0
  64. data/thirdparty/proto/api-common-protos/google/cloud/extended_operations.proto +150 -0
  65. data/thirdparty/proto/api-common-protos/google/iam/README.md +14 -0
  66. data/thirdparty/proto/api-common-protos/google/iam/admin/v1/iam.proto +1087 -0
  67. data/thirdparty/proto/api-common-protos/google/iam/v1/iam_policy.proto +145 -0
  68. data/thirdparty/proto/api-common-protos/google/iam/v1/logging/audit_data.proto +34 -0
  69. data/thirdparty/proto/api-common-protos/google/iam/v1/options.proto +41 -0
  70. data/thirdparty/proto/api-common-protos/google/iam/v1/policy.proto +240 -0
  71. data/thirdparty/proto/api-common-protos/google/logging/type/README.md +12 -0
  72. data/thirdparty/proto/api-common-protos/google/logging/type/http_request.proto +92 -0
  73. data/thirdparty/proto/api-common-protos/google/logging/type/log_severity.proto +72 -0
  74. data/thirdparty/proto/api-common-protos/google/longrunning/README.md +31 -0
  75. data/thirdparty/proto/api-common-protos/google/longrunning/operations.proto +247 -0
  76. data/thirdparty/proto/api-common-protos/google/rpc/README.md +18 -0
  77. data/thirdparty/proto/api-common-protos/google/rpc/code.proto +186 -0
  78. data/thirdparty/proto/api-common-protos/google/rpc/context/attribute_context.proto +287 -0
  79. data/thirdparty/proto/api-common-protos/google/rpc/error_details.proto +246 -0
  80. data/thirdparty/proto/api-common-protos/google/rpc/status.proto +47 -0
  81. data/thirdparty/proto/api-common-protos/google/type/README.md +7 -0
  82. data/thirdparty/proto/api-common-protos/google/type/calendar_period.proto +57 -0
  83. data/thirdparty/proto/api-common-protos/google/type/color.proto +170 -0
  84. data/thirdparty/proto/api-common-protos/google/type/date.proto +50 -0
  85. data/thirdparty/proto/api-common-protos/google/type/datetime.proto +97 -0
  86. data/thirdparty/proto/api-common-protos/google/type/dayofweek.proto +51 -0
  87. data/thirdparty/proto/api-common-protos/google/type/expr.proto +51 -0
  88. data/thirdparty/proto/api-common-protos/google/type/fraction.proto +34 -0
  89. data/thirdparty/proto/api-common-protos/google/type/latlng.proto +37 -0
  90. data/thirdparty/proto/api-common-protos/google/type/money.proto +43 -0
  91. data/thirdparty/proto/api-common-protos/google/type/month.proto +66 -0
  92. data/thirdparty/proto/api-common-protos/google/type/postal_address.proto +135 -0
  93. data/thirdparty/proto/api-common-protos/google/type/quaternion.proto +95 -0
  94. data/thirdparty/proto/api-common-protos/google/type/timeofday.proto +44 -0
  95. data/thirdparty/proto/api-common-protos/renovate.json +5 -0
  96. data/thirdparty/proto/api-common-protos/repository_rules.bzl +222 -0
  97. data/vagrant.gemspec +4 -4
  98. data/version.txt +1 -1
  99. metadata +89 -20
  100. data/lib/vagrant/patches/net-ssh.rb +0 -286
@@ -37,7 +37,7 @@ INLINE_CRIPT
37
37
 
38
38
  def self.pip_setup(machine, pip_install_cmd = "")
39
39
  machine.communicate.sudo "apt-get update -y -qq"
40
- machine.communicate.sudo "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq --option \"Dpkg::Options::=--force-confold\" build-essential curl git libssl-dev libffi-dev python-dev"
40
+ machine.communicate.sudo "DEBIAN_FRONTEND=noninteractive apt-get install -y -qq --option \"Dpkg::Options::=--force-confold\" build-essential curl git libssl-dev libffi-dev python-dev-is-python3"
41
41
  Pip::get_pip machine, pip_install_cmd
42
42
  end
43
43
 
@@ -185,7 +185,7 @@ module VagrantPlugins
185
185
 
186
186
  inventory_file = Pathname.new(File.join(inventory_path, 'vagrant_ansible_inventory'))
187
187
  @@lock.synchronize do
188
- if !File.exists?(inventory_file) or inventory_content != File.read(inventory_file)
188
+ if !File.exist?(inventory_file) or inventory_content != File.read(inventory_file)
189
189
  begin
190
190
  # ansible dir inventory will ignore files starting with '.'
191
191
  inventory_tmpfile = Tempfile.new('.vagrant_ansible_inventory', inventory_path)
@@ -81,7 +81,7 @@ module VagrantPlugins
81
81
  errors << I18n.t("vagrant.config.chef.nodes_path_empty")
82
82
  else
83
83
  missing_paths = Array.new
84
- nodes_path.each { |dir| missing_paths << dir[1] if !File.exists? dir[1] }
84
+ nodes_path.each { |dir| missing_paths << dir[1] if !File.exist? dir[1] }
85
85
  # If it exists at least one path on disk it's ok for Chef provisioning
86
86
  if missing_paths.size == nodes_path.size
87
87
  errors << I18n.t("vagrant.config.chef.nodes_path_missing", path: missing_paths.to_s)
@@ -108,6 +108,7 @@ module VagrantPlugins
108
108
  ssh_config_file,
109
109
  control_options,
110
110
  ]
111
+ rsh += ssh_info[:extra_args] if ssh_info[:extra_args]
111
112
 
112
113
  # Solaris/OpenSolaris/Illumos uses SunSSH which doesn't support the
113
114
  # IdentitiesOnly option. Also, we don't enable it if keys_only is false
@@ -1794,6 +1794,10 @@ en:
1794
1794
  VirtualBox is complaining that the installation is incomplete. Please
1795
1795
  run `VBoxManage --version` to see the error message which should contain
1796
1796
  instructions on how to fix this error.
1797
+ virtualbox_machine_folder_not_found: |-
1798
+ Vagrant failed to determine the machine folder on this host from
1799
+ the VirtualBox system information. Try running the command again.
1800
+ If this error persists, please report this error as a bug.
1797
1801
  virtualbox_mount_failed: |-
1798
1802
  Vagrant was unable to mount VirtualBox shared folders. This is usually
1799
1803
  because the filesystem "vboxsf" is not available. This filesystem is
@@ -0,0 +1,2 @@
1
+ # To make proto_library rules to include source info in the descriptor
2
+ build --protocopt=--include_source_info
@@ -0,0 +1 @@
1
+ gitdir: ../../../.git/modules/api-common-protos
@@ -0,0 +1,11 @@
1
+ OWNERS
2
+ README.google
3
+ google/internal
4
+ google/protobuf
5
+ .project
6
+ artman-genfiles/
7
+ bazel-api-common-protos
8
+ bazel-bin
9
+ bazel-genfiles
10
+ bazel-out
11
+ bazel-testlogs
@@ -0,0 +1,129 @@
1
+ load("@bazel_tools//tools/build_defs/pkg:pkg.bzl", "pkg_tar")
2
+
3
+ # Target used by Cloud Build to build GAPIC libraries.
4
+ # To find all available rules, use:
5
+ # $ grep -Er '\-(java|go|php)"'
6
+ pkg_tar(
7
+ name = 'gapic-cloud-build',
8
+ deps = [
9
+ '//google/api/expr/v1alpha1:gapi-cloud-cel-v1alpha1-go',
10
+ '//google/api/expr/v1alpha1:google-cloud-cel-v1alpha1-java',
11
+ '//google/bigtable/admin/v2:gapi-cloud-bigtableadmin-v2-go',
12
+ '//google/bigtable/admin/v2:google-cloud-bigtable-admin-v2-java',
13
+ '//google/bigtable/v2:gapi-cloud-bigtable-v2-go',
14
+ '//google/bigtable/v2:google-cloud-bigtable-v2-java',
15
+ '//google/cloud/asset/v1beta1:gapi-cloud-asset-v1beta1-go',
16
+ '//google/cloud/asset/v1beta1:google-cloud-asset-v1beta1-java',
17
+ '//google/cloud/automl/v1beta1:gapi-cloud-automl-v1beta1-go',
18
+ '//google/cloud/automl/v1beta1:google-cloud-automl-v1beta1-java',
19
+ '//google/cloud/bigquery/datatransfer/v1:gapi-cloud-bigquerydatatransfer-v1-go',
20
+ '//google/cloud/bigquery/datatransfer/v1:google-cloud-bigquerydatatransfer-v1-java',
21
+ '//google/cloud/bigquery/storage/v1beta1:gapi-cloud-bigquerystorage-v1-go',
22
+ '//google/cloud/bigquery/storage/v1beta1:google-cloud-bigquerystorage-v1-java',
23
+ '//google/cloud/dataproc/v1beta2:gapi-cloud-dataproc-v1beta2-go',
24
+ '//google/cloud/dataproc/v1beta2:google-cloud-dataproc-v1beta2-java',
25
+ '//google/cloud/dataproc/v1:gapi-cloud-dataproc-v1-go',
26
+ '//google/cloud/dataproc/v1:google-cloud-dataproc-v1-java',
27
+ '//google/cloud/dialogflow/v2beta1:gapi-cloud-dialogflow-v2beta1-go',
28
+ '//google/cloud/dialogflow/v2beta1:google-cloud-dialogflow-v2beta1-java',
29
+ '//google/cloud/dialogflow/v2:gapi-cloud-dialogflow-v2-go',
30
+ '//google/cloud/dialogflow/v2:google-cloud-dialogflow-v2-java',
31
+ '//google/cloud/dialogflow/v2:google-cloud-dialogflow-v2-php',
32
+ '//google/cloud/iot/v1:gapi-cloud-iot-v1-go',
33
+ '//google/cloud/iot/v1:google-cloud-iot-v1-java',
34
+ '//google/cloud/kms/v1:gapi-cloud-kms-v1-go',
35
+ '//google/cloud/kms/v1:google-cloud-kms-v1-java',
36
+ '//google/cloud/language/v1beta2:gapi-cloud-language-v1beta2-go',
37
+ '//google/cloud/language/v1beta2:google-cloud-language-v1beta2-java',
38
+ '//google/cloud/language/v1:gapi-cloud-language-v1-go',
39
+ '//google/cloud/language/v1:google-cloud-language-v1-java',
40
+ '//google/cloud/language/v1:google-cloud-language-v1-php',
41
+ '//google/cloud/oslogin/v1beta:gapi-cloud-oslogin-v1beta-go',
42
+ '//google/cloud/oslogin/v1beta:google-cloud-oslogin-v1beta-java',
43
+ '//google/cloud/oslogin/v1:gapi-cloud-oslogin-v1-go',
44
+ '//google/cloud/oslogin/v1:google-cloud-oslogin-v1-java',
45
+ '//google/cloud/redis/v1beta1:gapi-cloud-redis-v1beta1-go',
46
+ '//google/cloud/redis/v1beta1:google-cloud-redis-v1beta1-java',
47
+ '//google/cloud/redis/v1:gapi-cloud-redis-v1-go',
48
+ '//google/cloud/redis/v1:google-cloud-redis-v1-java',
49
+ '//google/cloud/scheduler/v1beta1:gapi-cloud-scheduler-v1beta1-go',
50
+ '//google/cloud/scheduler/v1beta1:google-cloud-scheduler-v1beta1-java',
51
+ '//google/cloud/securitycenter/v1beta1:gapi-cloud-securitycenter-v1beta1-go',
52
+ '//google/cloud/securitycenter/v1beta1:google-cloud-securitycenter-v1beta1-java',
53
+ '//google/cloud/speech/v1:gapi-cloud-speech-v1-go',
54
+ '//google/cloud/speech/v1:google-cloud-speech-v1-java',
55
+ '//google/cloud/speech/v1p1beta1:gapi-cloud-speech-v1p1beta1-go',
56
+ '//google/cloud/speech/v1p1beta1:google-cloud-speech-v1p1beta1-java',
57
+ '//google/cloud/tasks/v2beta2:gapi-cloud-tasks-v2beta2-go',
58
+ '//google/cloud/tasks/v2beta2:google-cloud-tasks-v2beta2-java',
59
+ '//google/cloud/tasks/v2beta3:gapi-cloud-tasks-v2beta3-go',
60
+ '//google/cloud/tasks/v2beta3:google-cloud-tasks-v2beta3-java',
61
+ '//google/cloud/texttospeech/v1beta1:gapi-cloud-texttospeech-v1beta1-go',
62
+ '//google/cloud/texttospeech/v1beta1:google-cloud-texttospeech-v1beta1-java',
63
+ '//google/cloud/texttospeech/v1:gapi-cloud-texttospeech-v1-go',
64
+ '//google/cloud/texttospeech/v1:google-cloud-texttospeech-v1-java',
65
+ '//google/cloud/videointelligence/v1beta1:gapi-cloud-video-intelligence-v1beta1-go',
66
+ '//google/cloud/videointelligence/v1beta1:google-cloud-video-intelligence-v1beta1-java',
67
+ '//google/cloud/videointelligence/v1beta2:gapi-cloud-video-intelligence-v1beta2-go',
68
+ '//google/cloud/videointelligence/v1beta2:google-cloud-video-intelligence-v1beta2-java',
69
+ '//google/cloud/videointelligence/v1:gapi-cloud-video-intelligence-v1-go',
70
+ '//google/cloud/videointelligence/v1:google-cloud-video-intelligence-v1-java',
71
+ '//google/cloud/videointelligence/v1p1beta1:gapi-cloud-video-intelligence-v1p1beta1-go',
72
+ '//google/cloud/videointelligence/v1p1beta1:google-cloud-video-intelligence-v1p1beta1-java',
73
+ '//google/cloud/videointelligence/v1p2beta1:gapi-cloud-video-intelligence-v1p2beta1-go',
74
+ '//google/cloud/videointelligence/v1p2beta1:google-cloud-video-intelligence-v1p2beta1-java',
75
+ '//google/cloud/videointelligence/v1p3beta1:gapi-cloud-video-intelligence-v1p3beta1-go',
76
+ '//google/cloud/vision/v1:gapi-cloud-vision-v1-go',
77
+ '//google/cloud/vision/v1:google-cloud-vision-v1-java',
78
+ '//google/cloud/vision/v1p1beta1:gapi-cloud-vision-v1p1beta1-go',
79
+ '//google/cloud/vision/v1p1beta1:google-cloud-vision-v1p1beta1-java',
80
+ '//google/cloud/vision/v1p2beta1:gapi-cloud-vision-v1p2beta1-go',
81
+ '//google/cloud/vision/v1p2beta1:google-cloud-vision-v1p2beta1-java',
82
+ '//google/cloud/vision/v1p3beta1:gapi-cloud-vision-v1p3beta1-go',
83
+ '//google/cloud/vision/v1p3beta1:google-cloud-vision-v1p3beta1-java',
84
+ '//google/cloud/vision/v1p4beta1:gapi-cloud-vision-v1p4beta1-go',
85
+ '//google/cloud/vision/v1p4beta1:google-cloud-vision-v1p4beta1-java',
86
+ '//google/cloud/websecurityscanner/v1alpha:gapi-cloud-websecurityscanner-v1alpha-go',
87
+ '//google/cloud/websecurityscanner/v1alpha:google-cloud-websecurityscanner-v1alpha-java',
88
+ '//google/container/v1:gapi-cloud-container-v1-go',
89
+ '//google/container/v1:google-cloud-container-v1-java',
90
+ '//google/datastore/v1:gapi-cloud-datastore-v1-go',
91
+ '//google/datastore/v1:google-cloud-datastore-v1-java',
92
+ '//google/devtools/clouddebugger/v2:gapi-cloud-debugger-v2-go',
93
+ '//google/devtools/clouddebugger/v2:google-cloud-debugger-v2-java',
94
+ '//google/devtools/clouderrorreporting/v1beta1:gapi-cloud-error-reporting-v1beta1-go',
95
+ '//google/devtools/clouderrorreporting/v1beta1:google-cloud-error-reporting-v1beta1-java',
96
+ '//google/devtools/cloudtrace/v1:gapi-cloud-trace-v1-go',
97
+ '//google/devtools/cloudtrace/v1:google-cloud-trace-v1-java',
98
+ '//google/devtools/cloudtrace/v2:gapi-cloud-trace-v2-go',
99
+ '//google/devtools/cloudtrace/v2:google-cloud-trace-v2-java',
100
+ '//google/devtools/containeranalysis/v1beta1:gapi-cloud-containeranalysis-v1-go',
101
+ '//google/devtools/containeranalysis/v1beta1:google-cloud-containeranalysis-v1-java',
102
+ '//google/devtools/source/v1:gapi-cloud-source-v1-go',
103
+ '//google/example/library/v1:gapi-cloud-library-v1-go',
104
+ '//google/example/library/v1:google-cloud-library-v1-java',
105
+ '//google/firestore/v1beta1:gapi-cloud-firestore-v1beta1-go',
106
+ '//google/firestore/v1beta1:google-cloud-firestore-v1beta1-java',
107
+ '//google/iam/admin/v1:gapi-cloud-iam-admin-v1-go',
108
+ '//google/iam/credentials/v1:gapi-cloud-iamcredentials-v1-go',
109
+ '//google/iam/credentials/v1:google-cloud-iamcredentials-v1-java',
110
+ '//google/iam/v1:gapi-cloud-iam-v1-go',
111
+ '//google/iam/v1/logging:gapi-cloud-iam-admin-go',
112
+ '//google/logging/v2:gapi-cloud-logging-v2-go',
113
+ '//google/logging/v2:google-cloud-logging-v2-java',
114
+ '//google/longrunning:gapi-cloud-longrunning-go',
115
+ '//google/monitoring/v3:gapi-cloud-monitoring-v3-go',
116
+ '//google/monitoring/v3:google-cloud-monitoring-v3-java',
117
+ '//google/privacy/dlp/v2:gapi-cloud-dlp-v2-go',
118
+ '//google/privacy/dlp/v2:google-cloud-dlp-v2-java',
119
+ '//google/pubsub/v1:gapi-cloud-pubsub-v1-go',
120
+ '//google/pubsub/v1:google-cloud-pubsub-v1-java',
121
+ '//google/pubsub/v1:google-cloud-pubsub-v1-php',
122
+ '//google/spanner/admin/database/v1:gapi-cloud-spanner-admin-database-v1-go',
123
+ '//google/spanner/admin/database/v1:google-cloud-spanner-admin-database-v1-java',
124
+ '//google/spanner/admin/instance/v1:gapi-cloud-spanner-admin-instance-v1-go',
125
+ '//google/spanner/admin/instance/v1:google-cloud-spanner-admin-instance-v1-java',
126
+ '//google/spanner/v1:gapi-cloud-spanner-v1-go',
127
+ '//google/spanner/v1:google-cloud-spanner-v1-java',
128
+ ]
129
+ )
@@ -0,0 +1,43 @@
1
+ # Contributor Code of Conduct
2
+
3
+ As contributors and maintainers of this project,
4
+ and in the interest of fostering an open and welcoming community,
5
+ we pledge to respect all people who contribute through reporting issues,
6
+ posting feature requests, updating documentation,
7
+ submitting pull requests or patches, and other activities.
8
+
9
+ We are committed to making participation in this project
10
+ a harassment-free experience for everyone,
11
+ regardless of level of experience, gender, gender identity and expression,
12
+ sexual orientation, disability, personal appearance,
13
+ body size, race, ethnicity, age, religion, or nationality.
14
+
15
+ Examples of unacceptable behavior by participants include:
16
+
17
+ * The use of sexualized language or imagery
18
+ * Personal attacks
19
+ * Trolling or insulting/derogatory comments
20
+ * Public or private harassment
21
+ * Publishing other's private information,
22
+ such as physical or electronic
23
+ addresses, without explicit permission
24
+ * Other unethical or unprofessional conduct.
25
+
26
+ Project maintainers have the right and responsibility to remove, edit, or reject
27
+ comments, commits, code, wiki edits, issues, and other contributions
28
+ that are not aligned to this Code of Conduct.
29
+ By adopting this Code of Conduct,
30
+ project maintainers commit themselves to fairly and consistently
31
+ applying these principles to every aspect of managing this project.
32
+ Project maintainers who do not follow or enforce the Code of Conduct
33
+ may be permanently removed from the project team.
34
+
35
+ This code of conduct applies both within project spaces and in public spaces
36
+ when an individual is representing the project or its community.
37
+
38
+ Instances of abusive, harassing, or otherwise unacceptable behavior
39
+ may be reported by opening an issue
40
+ or contacting one or more of the project maintainers.
41
+
42
+ This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.2.0,
43
+ available at [http://contributor-covenant.org/version/1/2/0/](http://contributor-covenant.org/version/1/2/0/)
@@ -0,0 +1,42 @@
1
+ ## Contributing
2
+
3
+ We are pleased that you are interested in contributing to our work.
4
+
5
+ ### Protocol Buffer Files
6
+
7
+ We welcome ideas and discussion around the messages provided in this
8
+ repository. One caveat: These are very widely used within Google, and are
9
+ seeing increasing usage elsewhere. In the interest of compatibility, we
10
+ must be very deliberative about accepting additions in this repository.
11
+ We are likely to do so only if there is _already_ significant adoption
12
+ and general consensus around the idea (in another context, e.g. similar protos
13
+ declared elsewhere and already in use).
14
+
15
+ Therefore, we encourage and welcome ideas and contributions, but request
16
+ patience in the event that additions or changes are needed.
17
+
18
+
19
+ ### Documentation
20
+
21
+ We want for both protocol buffers and the types that we have provided here
22
+ to be understandable to everyone, including to those who may be unfamiliar
23
+ with the ecosystem or concepts.
24
+
25
+ That means we want our documentation to be better, and welcome anyone
26
+ willing to help with this. Please open a pull request.
27
+
28
+ ## Contributor License Agreement
29
+
30
+ Before we can accept your pull requests, you will need to sign a Contributor
31
+ License Agreement (CLA):
32
+
33
+ - **If you are an individual writing original source code** and **you own the
34
+ intellectual property**, then you need to sign an [individual CLA][].
35
+ - **If you work for a company that wants to allow you to contribute your
36
+ work**, then you need to sign a [corporate CLA][].
37
+
38
+ You can sign these electronically (just scroll to the bottom). After that,
39
+ we'll be able to accept your pull requests.
40
+
41
+ [individual CLA]: https://developers.google.com/open-source/cla/individual
42
+ [corporate CLA]: https://developers.google.com/open-source/cla/corporate
@@ -0,0 +1,18 @@
1
+ FROM alpine:3.15
2
+
3
+ # Install curl and unzip, which are required to add protoc.
4
+ RUN apk add --no-cache curl unzip
5
+
6
+ # Add protoc.
7
+ ENV PROTOBUF_VERSION 3.14.0
8
+ RUN mkdir -p /usr/src/protoc/ \
9
+ && curl --location https://github.com/google/protobuf/releases/download/v${PROTOBUF_VERSION}/protoc-${PROTOBUF_VERSION}-linux-x86_64.zip > /usr/src/protoc/protoc-${PROTOBUF_VERSION}.zip \
10
+ && cd /usr/src/protoc/ \
11
+ && unzip protoc-${PROTOBUF_VERSION}.zip \
12
+ && rm protoc-${PROTOBUF_VERSION}.zip \
13
+ && ln -s /usr/src/protoc/bin/protoc /usr/local/bin/protoc \
14
+ && mkdir -p /protos/ \
15
+ && cp -R /usr/src/protoc/include/google/ /protos/google/
16
+
17
+ # Add the protos to the Docker image.
18
+ COPY . /protos/
@@ -0,0 +1,201 @@
1
+ Apache License
2
+ Version 2.0, January 2004
3
+ http://www.apache.org/licenses/
4
+
5
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
+
7
+ 1. Definitions.
8
+
9
+ "License" shall mean the terms and conditions for use, reproduction,
10
+ and distribution as defined by Sections 1 through 9 of this document.
11
+
12
+ "Licensor" shall mean the copyright owner or entity authorized by
13
+ the copyright owner that is granting the License.
14
+
15
+ "Legal Entity" shall mean the union of the acting entity and all
16
+ other entities that control, are controlled by, or are under common
17
+ control with that entity. For the purposes of this definition,
18
+ "control" means (i) the power, direct or indirect, to cause the
19
+ direction or management of such entity, whether by contract or
20
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
21
+ outstanding shares, or (iii) beneficial ownership of such entity.
22
+
23
+ "You" (or "Your") shall mean an individual or Legal Entity
24
+ exercising permissions granted by this License.
25
+
26
+ "Source" form shall mean the preferred form for making modifications,
27
+ including but not limited to software source code, documentation
28
+ source, and configuration files.
29
+
30
+ "Object" form shall mean any form resulting from mechanical
31
+ transformation or translation of a Source form, including but
32
+ not limited to compiled object code, generated documentation,
33
+ and conversions to other media types.
34
+
35
+ "Work" shall mean the work of authorship, whether in Source or
36
+ Object form, made available under the License, as indicated by a
37
+ copyright notice that is included in or attached to the work
38
+ (an example is provided in the Appendix below).
39
+
40
+ "Derivative Works" shall mean any work, whether in Source or Object
41
+ form, that is based on (or derived from) the Work and for which the
42
+ editorial revisions, annotations, elaborations, or other modifications
43
+ represent, as a whole, an original work of authorship. For the purposes
44
+ of this License, Derivative Works shall not include works that remain
45
+ separable from, or merely link (or bind by name) to the interfaces of,
46
+ the Work and Derivative Works thereof.
47
+
48
+ "Contribution" shall mean any work of authorship, including
49
+ the original version of the Work and any modifications or additions
50
+ to that Work or Derivative Works thereof, that is intentionally
51
+ submitted to Licensor for inclusion in the Work by the copyright owner
52
+ or by an individual or Legal Entity authorized to submit on behalf of
53
+ the copyright owner. For the purposes of this definition, "submitted"
54
+ means any form of electronic, verbal, or written communication sent
55
+ to the Licensor or its representatives, including but not limited to
56
+ communication on electronic mailing lists, source code control systems,
57
+ and issue tracking systems that are managed by, or on behalf of, the
58
+ Licensor for the purpose of discussing and improving the Work, but
59
+ excluding communication that is conspicuously marked or otherwise
60
+ designated in writing by the copyright owner as "Not a Contribution."
61
+
62
+ "Contributor" shall mean Licensor and any individual or Legal Entity
63
+ on behalf of whom a Contribution has been received by Licensor and
64
+ subsequently incorporated within the Work.
65
+
66
+ 2. Grant of Copyright License. Subject to the terms and conditions of
67
+ this License, each Contributor hereby grants to You a perpetual,
68
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69
+ copyright license to reproduce, prepare Derivative Works of,
70
+ publicly display, publicly perform, sublicense, and distribute the
71
+ Work and such Derivative Works in Source or Object form.
72
+
73
+ 3. Grant of Patent License. Subject to the terms and conditions of
74
+ this License, each Contributor hereby grants to You a perpetual,
75
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76
+ (except as stated in this section) patent license to make, have made,
77
+ use, offer to sell, sell, import, and otherwise transfer the Work,
78
+ where such license applies only to those patent claims licensable
79
+ by such Contributor that are necessarily infringed by their
80
+ Contribution(s) alone or by combination of their Contribution(s)
81
+ with the Work to which such Contribution(s) was submitted. If You
82
+ institute patent litigation against any entity (including a
83
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
84
+ or a Contribution incorporated within the Work constitutes direct
85
+ or contributory patent infringement, then any patent licenses
86
+ granted to You under this License for that Work shall terminate
87
+ as of the date such litigation is filed.
88
+
89
+ 4. Redistribution. You may reproduce and distribute copies of the
90
+ Work or Derivative Works thereof in any medium, with or without
91
+ modifications, and in Source or Object form, provided that You
92
+ meet the following conditions:
93
+
94
+ (a) You must give any other recipients of the Work or
95
+ Derivative Works a copy of this License; and
96
+
97
+ (b) You must cause any modified files to carry prominent notices
98
+ stating that You changed the files; and
99
+
100
+ (c) You must retain, in the Source form of any Derivative Works
101
+ that You distribute, all copyright, patent, trademark, and
102
+ attribution notices from the Source form of the Work,
103
+ excluding those notices that do not pertain to any part of
104
+ the Derivative Works; and
105
+
106
+ (d) If the Work includes a "NOTICE" text file as part of its
107
+ distribution, then any Derivative Works that You distribute must
108
+ include a readable copy of the attribution notices contained
109
+ within such NOTICE file, excluding those notices that do not
110
+ pertain to any part of the Derivative Works, in at least one
111
+ of the following places: within a NOTICE text file distributed
112
+ as part of the Derivative Works; within the Source form or
113
+ documentation, if provided along with the Derivative Works; or,
114
+ within a display generated by the Derivative Works, if and
115
+ wherever such third-party notices normally appear. The contents
116
+ of the NOTICE file are for informational purposes only and
117
+ do not modify the License. You may add Your own attribution
118
+ notices within Derivative Works that You distribute, alongside
119
+ or as an addendum to the NOTICE text from the Work, provided
120
+ that such additional attribution notices cannot be construed
121
+ as modifying the License.
122
+
123
+ You may add Your own copyright statement to Your modifications and
124
+ may provide additional or different license terms and conditions
125
+ for use, reproduction, or distribution of Your modifications, or
126
+ for any such Derivative Works as a whole, provided Your use,
127
+ reproduction, and distribution of the Work otherwise complies with
128
+ the conditions stated in this License.
129
+
130
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
131
+ any Contribution intentionally submitted for inclusion in the Work
132
+ by You to the Licensor shall be under the terms and conditions of
133
+ this License, without any additional terms or conditions.
134
+ Notwithstanding the above, nothing herein shall supersede or modify
135
+ the terms of any separate license agreement you may have executed
136
+ with Licensor regarding such Contributions.
137
+
138
+ 6. Trademarks. This License does not grant permission to use the trade
139
+ names, trademarks, service marks, or product names of the Licensor,
140
+ except as required for reasonable and customary use in describing the
141
+ origin of the Work and reproducing the content of the NOTICE file.
142
+
143
+ 7. Disclaimer of Warranty. Unless required by applicable law or
144
+ agreed to in writing, Licensor provides the Work (and each
145
+ Contributor provides its Contributions) on an "AS IS" BASIS,
146
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147
+ implied, including, without limitation, any warranties or conditions
148
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149
+ PARTICULAR PURPOSE. You are solely responsible for determining the
150
+ appropriateness of using or redistributing the Work and assume any
151
+ risks associated with Your exercise of permissions under this License.
152
+
153
+ 8. Limitation of Liability. In no event and under no legal theory,
154
+ whether in tort (including negligence), contract, or otherwise,
155
+ unless required by applicable law (such as deliberate and grossly
156
+ negligent acts) or agreed to in writing, shall any Contributor be
157
+ liable to You for damages, including any direct, indirect, special,
158
+ incidental, or consequential damages of any character arising as a
159
+ result of this License or out of the use or inability to use the
160
+ Work (including but not limited to damages for loss of goodwill,
161
+ work stoppage, computer failure or malfunction, or any and all
162
+ other commercial damages or losses), even if such Contributor
163
+ has been advised of the possibility of such damages.
164
+
165
+ 9. Accepting Warranty or Additional Liability. While redistributing
166
+ the Work or Derivative Works thereof, You may choose to offer,
167
+ and charge a fee for, acceptance of support, warranty, indemnity,
168
+ or other liability obligations and/or rights consistent with this
169
+ License. However, in accepting such obligations, You may act only
170
+ on Your own behalf and on Your sole responsibility, not on behalf
171
+ of any other Contributor, and only if You agree to indemnify,
172
+ defend, and hold each Contributor harmless for any liability
173
+ incurred by, or claims asserted against, such Contributor by reason
174
+ of your accepting any such warranty or additional liability.
175
+
176
+ END OF TERMS AND CONDITIONS
177
+
178
+ APPENDIX: How to apply the Apache License to your work.
179
+
180
+ To apply the Apache License to your work, attach the following
181
+ boilerplate notice, with the fields enclosed by brackets "[]"
182
+ replaced with your own identifying information. (Don't include
183
+ the brackets!) The text should be enclosed in the appropriate
184
+ comment syntax for the file format. We also recommend that a
185
+ file or class name and description of purpose be included on the
186
+ same "printed page" as the copyright notice for easier
187
+ identification within third-party archives.
188
+
189
+ Copyright [yyyy] [name of copyright owner]
190
+
191
+ Licensed under the Apache License, Version 2.0 (the "License");
192
+ you may not use this file except in compliance with the License.
193
+ You may obtain a copy of the License at
194
+
195
+ http://www.apache.org/licenses/LICENSE-2.0
196
+
197
+ Unless required by applicable law or agreed to in writing, software
198
+ distributed under the License is distributed on an "AS IS" BASIS,
199
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200
+ See the License for the specific language governing permissions and
201
+ limitations under the License.
@@ -0,0 +1,113 @@
1
+ ## Common Protos
2
+
3
+ [![release level](https://img.shields.io/badge/release%20level-general%20availability%20%28GA%29-brightgreen.svg?style&#x3D;flat)](https://cloud.google.com/terms/launch-stages)
4
+
5
+ This repository is a home for the [protocol buffer][protobuf] types which are
6
+ common dependencies throughout the Google API ecosystem, and which are made
7
+ available for use as dependencies elsewhere.
8
+
9
+ ### About protocol buffers
10
+
11
+ [Protocol buffers][protobuf] are Google's language-neutral, platform-neutral,
12
+ extensible mechanism for serializing structured data – think XML,
13
+ but smaller, faster, and simpler. You define how you want your data to be
14
+ structured once, then you can use special generated source code to easily
15
+ write and read your structured data to and from a variety of data streams
16
+ and using a variety of languages.
17
+
18
+ One popular use for protocol buffers, both within Google and elsewhere,
19
+ is for specifying API design. They serve as a useful representation for
20
+ API serivices, methods, and fields. You can read more about API design
21
+ philosophy with protocol buffers by consulting our
22
+ [API Design Guide][api-style].
23
+
24
+ [api-style]: https://cloud.google.com/apis/design/
25
+ [protobuf]: https://developers.google.com/protocol-buffers/
26
+
27
+ ### Why a common protos repository?
28
+
29
+ When writing protocol buffers, it is common to need to reuse common patterns.
30
+ For example, common types show up in many different APIs, but have
31
+ a consistent implementation. The same is true elsewhere.
32
+
33
+ This repository seeks to be a home for such types; protocol buffer authors
34
+ may check out this repository and import them into their own work to save
35
+ effort.
36
+
37
+ The protos in the various subdirectories in this repository have different
38
+ purposes, and are documented in their respective README files.
39
+
40
+ ## Using these protos
41
+
42
+ These protos are made available under an Apache license (see `LICENSE`) and
43
+ you are free to depend on them within your applications. They are
44
+ considered stable and will not change in backwards-incompaible ways.
45
+
46
+ In order to depend on these protos, use proto import statements that
47
+ reference the base of this repository, for example:
48
+
49
+ ```protobuf
50
+ syntax = "proto3";
51
+
52
+ import "google/type/color.proto";
53
+
54
+
55
+ // A message representing a paint can.
56
+ message PaintCan {
57
+ // The size of the paint can, in gallons.
58
+ float size_gallons = 1;
59
+
60
+ // The color of the paint.
61
+ google.type.Color color = 2;
62
+ }
63
+ ```
64
+
65
+ If you are using `protoc` (or other similar tooling) to compile these
66
+ protos yourself, you will likely require a local copy. Clone this repository
67
+ to a convenient location and use `--proto_path` to specify the _root_ of
68
+ this repository on your machine to the compiler.
69
+
70
+ ## Packages
71
+
72
+ Additionally, if using these common protos, it is not necessary to ship
73
+ the compiled types yourself in many common languages. Google provides
74
+ a common protos package in several languages, which can be added as a
75
+ dependency, and which makes these types available.
76
+
77
+ * **C#**: [Google.Api.CommonProtos](https://www.nuget.org/packages/Google.Api.CommonProtos/)
78
+ * **Java**: [proto-google-common-protos](https://mvnrepository.com/artifact/com.google.api.grpc/proto-google-common-protos)
79
+ * **Go**: [google.golang.org/genproto/googleapis](https://godoc.org/google.golang.org/genproto/googleapis)
80
+ * **Node.js**: [google-proto-files](https://www.npmjs.com/package/google-proto-files)
81
+ * **PHP**: [gax-php](https://github.com/googleapis/gax-php)
82
+ * **Python**: [googleapis-common-protos](https://pypi.org/project/googleapis-common-protos/)
83
+ * **Ruby**: [googleapis-common-protos](https://rubygems.org/gems/googleapis-common-protos/versions/1.3.5)
84
+
85
+ Note that if using these packages, you will still need a local copy of
86
+ these protos when using `protoc`, but you will _not_ need to ship compiled
87
+ versions of them. (This is consistent with `protoc`'s default behavior of
88
+ only providing compiled output for the files specifically requested, and not
89
+ their imports.)
90
+
91
+ ## google.protobuf types (separate from this repo)
92
+
93
+ There are a small number of types that are _so_ common that they are
94
+ included in the actual protocol buffers runtime itself.
95
+ These are anything with an import path beginning with `google/protobuf/`,
96
+ and notably includes timestamps and durations.
97
+
98
+ These are _not_ defined in this directory, and you do _not_ need to follow
99
+ any of the instructions for including this (as discussed in the root `README`
100
+ file) if you want to use those. They are part of protocol buffers, and
101
+ an import of those will "just work". These are colloquially referred to
102
+ as "well-known types".
103
+
104
+ ## Disclaimer
105
+
106
+ These protos are made available by Google, but are not considered to be an
107
+ official Google product.
108
+
109
+ ## License
110
+
111
+ These protos are licensed using the Apache 2.0 software license, a permissive,
112
+ copyfree license. You are free to use them in your applications provided
113
+ the license terms are honored.
@@ -0,0 +1,7 @@
1
+ # Security Policy
2
+
3
+ To report a security issue, please use [g.co/vulnz](https://g.co/vulnz).
4
+
5
+ The Google Security Team will respond within 5 working days of your report on g.co/vulnz.
6
+
7
+ We use g.co/vulnz for our intake, and do coordination and disclosure here using GitHub Security Advisory to privately discuss and fix the issue.