pulumi-language-ruby 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE.txt +21 -0
- data/README.md +39 -0
- data/Rakefile +8 -0
- data/exe/pulumi-language-ruby +39 -0
- data/lib/ruby_pulumi/generated/pulumi/alias_pb.rb +16 -0
- data/lib/ruby_pulumi/generated/pulumi/analyzer_pb.rb +43 -0
- data/lib/ruby_pulumi/generated/pulumi/analyzer_services_pb.rb +69 -0
- data/lib/ruby_pulumi/generated/pulumi/callback_pb.rb +17 -0
- data/lib/ruby_pulumi/generated/pulumi/callback_services_pb.rb +39 -0
- data/lib/ruby_pulumi/generated/pulumi/codegen/hcl_pb.rb +20 -0
- data/lib/ruby_pulumi/generated/pulumi/codegen/loader_pb.rb +17 -0
- data/lib/ruby_pulumi/generated/pulumi/codegen/loader_services_pb.rb +40 -0
- data/lib/ruby_pulumi/generated/pulumi/codegen/mapper_pb.rb +17 -0
- data/lib/ruby_pulumi/generated/pulumi/codegen/mapper_services_pb.rb +50 -0
- data/lib/ruby_pulumi/generated/pulumi/converter_pb.rb +21 -0
- data/lib/ruby_pulumi/generated/pulumi/converter_services_pb.rb +42 -0
- data/lib/ruby_pulumi/generated/pulumi/engine_pb.rb +26 -0
- data/lib/ruby_pulumi/generated/pulumi/engine_services_pb.rb +51 -0
- data/lib/ruby_pulumi/generated/pulumi/errors_pb.rb +17 -0
- data/lib/ruby_pulumi/generated/pulumi/events_pb.rb +17 -0
- data/lib/ruby_pulumi/generated/pulumi/events_services_pb.rb +45 -0
- data/lib/ruby_pulumi/generated/pulumi/language_pb.rb +55 -0
- data/lib/ruby_pulumi/generated/pulumi/language_services_pb.rb +121 -0
- data/lib/ruby_pulumi/generated/pulumi/plugin_pb.rb +19 -0
- data/lib/ruby_pulumi/generated/pulumi/provider_pb.rb +66 -0
- data/lib/ruby_pulumi/generated/pulumi/provider_services_pb.rb +232 -0
- data/lib/ruby_pulumi/generated/pulumi/resource_pb.rb +51 -0
- data/lib/ruby_pulumi/generated/pulumi/resource_services_pb.rb +64 -0
- data/lib/ruby_pulumi/generated/pulumi/resource_status_pb.rb +23 -0
- data/lib/ruby_pulumi/generated/pulumi/resource_status_services_pb.rb +44 -0
- data/lib/ruby_pulumi/generated/pulumi/source_pb.rb +17 -0
- data/lib/ruby_pulumi/generated/pulumi/testing/language_pb.rb +24 -0
- data/lib/ruby_pulumi/generated/pulumi/testing/language_services_pb.rb +47 -0
- data/lib/ruby_pulumi/language_host.rb +46 -0
- data/lib/ruby_pulumi/pulumi.rb +2 -0
- data/lib/ruby_pulumi/resource.rb +24 -0
- data/lib/ruby_pulumi/runtime.rb +7 -0
- data/pulumi/alias.proto +38 -0
- data/pulumi/analyzer.proto +293 -0
- data/pulumi/callback.proto +44 -0
- data/pulumi/codegen/hcl.proto +89 -0
- data/pulumi/codegen/loader.proto +51 -0
- data/pulumi/codegen/mapper.proto +74 -0
- data/pulumi/converter.proto +94 -0
- data/pulumi/engine.proto +113 -0
- data/pulumi/errors.proto +38 -0
- data/pulumi/events.proto +39 -0
- data/pulumi/language.proto +653 -0
- data/pulumi/plugin.proto +66 -0
- data/pulumi/provider.proto +1227 -0
- data/pulumi/resource.proto +394 -0
- data/pulumi/resource_status.proto +172 -0
- data/pulumi/source.proto +36 -0
- data/pulumi/testing/language.proto +106 -0
- data/sig/pulumi/language/ruby.rbs +8 -0
- metadata +125 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 375f336d9cade8cef9c164063865cb9827defaa2cc1cade275bf5469f7fbe794
|
|
4
|
+
data.tar.gz: '0396c8b1c1ff058acdfbc38f51332b33ae80b37ccda46d79f833d1e4a1ef6646'
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 53cdee4c9814e252442453547a3ab55f7d6f1aa522a2ce7612d20c9449748696ce7a20152253e83c23821da0b5b4b770c9b2c6efeeb752a6b597a3b3dbae113b
|
|
7
|
+
data.tar.gz: 769610f14317e7fc7a5e0373d419f2045acb3148cfab9eb24de2d0cb143f0aa252c8a04947888662b871989f3b0774d8aee7d413d5cd79cacaf23488073156ff
|
data/LICENSE.txt
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Petris Fernandes
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
|
13
|
+
all copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
21
|
+
THE SOFTWARE.
|
data/README.md
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Pulumi::Language::Ruby
|
|
2
|
+
|
|
3
|
+
TODO: Delete this and the text below, and describe your gem
|
|
4
|
+
|
|
5
|
+
Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/pulumi/language/ruby`. To experiment with that code, run `bin/console` for an interactive prompt.
|
|
6
|
+
|
|
7
|
+
## Installation
|
|
8
|
+
|
|
9
|
+
TODO: Replace `UPDATE_WITH_YOUR_GEM_NAME_IMMEDIATELY_AFTER_RELEASE_TO_RUBYGEMS_ORG` with your gem name right after releasing it to RubyGems.org. Please do not do it earlier due to security reasons. Alternatively, replace this section with instructions to install your gem from git if you don't plan to release to RubyGems.org.
|
|
10
|
+
|
|
11
|
+
Install the gem and add to the application's Gemfile by executing:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
bundle add UPDATE_WITH_YOUR_GEM_NAME_IMMEDIATELY_AFTER_RELEASE_TO_RUBYGEMS_ORG
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
If bundler is not being used to manage dependencies, install the gem by executing:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
gem install UPDATE_WITH_YOUR_GEM_NAME_IMMEDIATELY_AFTER_RELEASE_TO_RUBYGEMS_ORG
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Usage
|
|
24
|
+
|
|
25
|
+
TODO: Write usage instructions here
|
|
26
|
+
|
|
27
|
+
## Development
|
|
28
|
+
|
|
29
|
+
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
|
30
|
+
|
|
31
|
+
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
|
32
|
+
|
|
33
|
+
## Contributing
|
|
34
|
+
|
|
35
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/pulumi-language-ruby.
|
|
36
|
+
|
|
37
|
+
## License
|
|
38
|
+
|
|
39
|
+
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
data/Rakefile
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
$LOAD_PATH.unshift(
|
|
4
|
+
File.expand_path("../lib/ruby_pulumi/generated", __dir__)
|
|
5
|
+
)
|
|
6
|
+
|
|
7
|
+
if ARGV.include?('-version')
|
|
8
|
+
puts "0.0.1"
|
|
9
|
+
exit 0
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
require 'grpc'
|
|
13
|
+
require_relative '../lib/ruby_pulumi/language_host'
|
|
14
|
+
|
|
15
|
+
server = GRPC::RpcServer.new
|
|
16
|
+
port = server.add_http2_port('127.0.0.1:0', :this_port_is_insecure)
|
|
17
|
+
|
|
18
|
+
server.handle(RubyPulumi::LanguageHost.new)
|
|
19
|
+
|
|
20
|
+
puts port
|
|
21
|
+
STDOUT.flush
|
|
22
|
+
|
|
23
|
+
shutdown = false
|
|
24
|
+
|
|
25
|
+
trap("TERM") { shutdown = true }
|
|
26
|
+
trap("INT") { shutdown = true }
|
|
27
|
+
|
|
28
|
+
server_thread = Thread.new do
|
|
29
|
+
server.run
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Poll shutdown flag
|
|
33
|
+
loop do
|
|
34
|
+
break if shutdown
|
|
35
|
+
sleep 0.1
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
server.stop
|
|
39
|
+
server_thread.join
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: pulumi/alias.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
descriptor_data = "\n\x12pulumi/alias.proto\x12\tpulumirpc\"\xbd\x01\n\x05\x41lias\x12\r\n\x03urn\x18\x01 \x01(\tH\x00\x12%\n\x04spec\x18\x02 \x01(\x0b\x32\x15.pulumirpc.Alias.SpecH\x00\x1au\n\x04Spec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\r\n\x05stack\x18\x03 \x01(\t\x12\x0f\n\x07project\x18\x04 \x01(\t\x12\x13\n\tparentUrn\x18\x05 \x01(\tH\x00\x12\x12\n\x08noParent\x18\x06 \x01(\x08H\x00\x42\x08\n\x06parentB\x07\n\x05\x61liasB4Z2github.com/pulumi/pulumi/sdk/v3/proto/go;pulumirpcb\x06proto3"
|
|
9
|
+
|
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
11
|
+
pool.add_serialized_file(descriptor_data)
|
|
12
|
+
|
|
13
|
+
module Pulumirpc
|
|
14
|
+
Alias = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.Alias").msgclass
|
|
15
|
+
Alias::Spec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.Alias.Spec").msgclass
|
|
16
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: pulumi/analyzer.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
require 'pulumi/plugin_pb'
|
|
8
|
+
require 'google/protobuf/empty_pb'
|
|
9
|
+
require 'google/protobuf/struct_pb'
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
descriptor_data = "\n\x15pulumi/analyzer.proto\x12\tpulumirpc\x1a\x13pulumi/plugin.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/protobuf/struct.proto\"\xec\x02\n\x1d\x41nalyzerStackConfigureRequest\x12\r\n\x05stack\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x14\n\x0corganization\x18\x03 \x01(\t\x12\x0f\n\x07\x64ry_run\x18\x04 \x01(\x08\x12\x1a\n\x12\x63onfig_secret_keys\x18\x06 \x03(\t\x12\x44\n\x06\x63onfig\x18\x07 \x03(\x0b\x32\x34.pulumirpc.AnalyzerStackConfigureRequest.ConfigEntry\x12@\n\x04tags\x18\x08 \x03(\x0b\x32\x32.pulumirpc.AnalyzerStackConfigureRequest.TagsEntry\x1a-\n\x0b\x43onfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01J\x04\x08\x05\x10\x06\" \n\x1e\x41nalyzerStackConfigureResponse\"\x98\x01\n\x18\x41nalyzerHandshakeRequest\x12\x16\n\x0e\x65ngine_address\x18\x01 \x01(\t\x12\x1b\n\x0eroot_directory\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x11program_directory\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\x11\n\x0f_root_directoryB\x14\n\x12_program_directory\"\x1b\n\x19\x41nalyzerHandshakeResponse\"\xd2\x01\n\x0e\x41nalyzeRequest\x12\x0c\n\x04type\x18\x01 \x01(\t\x12+\n\nproperties\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x0b\n\x03urn\x18\x03 \x01(\t\x12\x0c\n\x04name\x18\x04 \x01(\t\x12\x33\n\x07options\x18\x05 \x01(\x0b\x32\".pulumirpc.AnalyzerResourceOptions\x12\x35\n\x08provider\x18\x06 \x01(\x0b\x32#.pulumirpc.AnalyzerProviderResource\"\xb5\x03\n\x10\x41nalyzerResource\x12\x0c\n\x04type\x18\x01 \x01(\t\x12+\n\nproperties\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x0b\n\x03urn\x18\x03 \x01(\t\x12\x0c\n\x04name\x18\x04 \x01(\t\x12\x33\n\x07options\x18\x05 \x01(\x0b\x32\".pulumirpc.AnalyzerResourceOptions\x12\x35\n\x08provider\x18\x06 \x01(\x0b\x32#.pulumirpc.AnalyzerProviderResource\x12\x0e\n\x06parent\x18\x07 \x01(\t\x12\x14\n\x0c\x64\x65pendencies\x18\x08 \x03(\t\x12S\n\x14propertyDependencies\x18\t \x03(\x0b\x32\x35.pulumirpc.AnalyzerResource.PropertyDependenciesEntry\x1a\x64\n\x19PropertyDependenciesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32\'.pulumirpc.AnalyzerPropertyDependencies:\x02\x38\x01\"\xd1\x02\n\x17\x41nalyzerResourceOptions\x12\x0f\n\x07protect\x18\x01 \x01(\x08\x12\x15\n\rignoreChanges\x18\x02 \x03(\t\x12\x1b\n\x13\x64\x65leteBeforeReplace\x18\x03 \x01(\x08\x12\"\n\x1a\x64\x65leteBeforeReplaceDefined\x18\x04 \x01(\x08\x12\x1f\n\x17\x61\x64\x64itionalSecretOutputs\x18\x05 \x03(\t\x12\x0f\n\x07\x61liases\x18\x06 \x03(\t\x12I\n\x0e\x63ustomTimeouts\x18\x07 \x01(\x0b\x32\x31.pulumirpc.AnalyzerResourceOptions.CustomTimeouts\x12\x0e\n\x06parent\x18\x08 \x01(\t\x1a@\n\x0e\x43ustomTimeouts\x12\x0e\n\x06\x63reate\x18\x01 \x01(\x01\x12\x0e\n\x06update\x18\x02 \x01(\x01\x12\x0e\n\x06\x64\x65lete\x18\x03 \x01(\x01\"p\n\x18\x41nalyzerProviderResource\x12\x0c\n\x04type\x18\x01 \x01(\t\x12+\n\nproperties\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x0b\n\x03urn\x18\x03 \x01(\t\x12\x0c\n\x04name\x18\x04 \x01(\t\",\n\x1c\x41nalyzerPropertyDependencies\x12\x0c\n\x04urns\x18\x01 \x03(\t\"E\n\x13\x41nalyzeStackRequest\x12.\n\tresources\x18\x01 \x03(\x0b\x32\x1b.pulumirpc.AnalyzerResource\"|\n\x0f\x41nalyzeResponse\x12\x31\n\x0b\x64iagnostics\x18\x02 \x03(\x0b\x32\x1c.pulumirpc.AnalyzeDiagnostic\x12\x36\n\x0enot_applicable\x18\x03 \x03(\x0b\x32\x1e.pulumirpc.PolicyNotApplicable\"\xfd\x01\n\x11\x41nalyzeDiagnostic\x12\x12\n\npolicyName\x18\x01 \x01(\t\x12\x16\n\x0epolicyPackName\x18\x02 \x01(\t\x12\x19\n\x11policyPackVersion\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x0f\n\x07message\x18\x05 \x01(\t\x12\x35\n\x10\x65nforcementLevel\x18\x07 \x01(\x0e\x32\x1b.pulumirpc.EnforcementLevel\x12\x0b\n\x03urn\x18\x08 \x01(\t\x12+\n\x08severity\x18\t \x01(\x0e\x32\x19.pulumirpc.PolicySeverityJ\x04\x08\x06\x10\x07R\x04tags\"\xaa\x01\n\x0bRemediation\x12\x12\n\npolicyName\x18\x01 \x01(\t\x12\x16\n\x0epolicyPackName\x18\x02 \x01(\t\x12\x19\n\x11policyPackVersion\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12+\n\nproperties\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x12\n\ndiagnostic\x18\x06 \x01(\t\"y\n\x11RemediateResponse\x12,\n\x0cremediations\x18\x01 \x03(\x0b\x32\x16.pulumirpc.Remediation\x12\x36\n\x0enot_applicable\x18\x02 \x03(\x0b\x32\x1e.pulumirpc.PolicyNotApplicable\"\xee\x02\n\x0c\x41nalyzerInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64isplayName\x18\x02 \x01(\t\x12\'\n\x08policies\x18\x03 \x03(\x0b\x32\x15.pulumirpc.PolicyInfo\x12\x0f\n\x07version\x18\x04 \x01(\t\x12\x16\n\x0esupportsConfig\x18\x05 \x01(\x08\x12\x41\n\rinitialConfig\x18\x06 \x03(\x0b\x32*.pulumirpc.AnalyzerInfo.InitialConfigEntry\x12\x13\n\x0b\x64\x65scription\x18\x07 \x01(\t\x12\x0e\n\x06readme\x18\x08 \x01(\t\x12\x10\n\x08provider\x18\t \x01(\t\x12\x0c\n\x04tags\x18\n \x03(\t\x12\x12\n\nrepository\x18\x0b \x01(\t\x1aM\n\x12InitialConfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.pulumirpc.PolicyConfig:\x02\x38\x01\"\x89\x03\n\nPolicyInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64isplayName\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x0f\n\x07message\x18\x04 \x01(\t\x12\x35\n\x10\x65nforcementLevel\x18\x05 \x01(\x0e\x32\x1b.pulumirpc.EnforcementLevel\x12\x33\n\x0c\x63onfigSchema\x18\x06 \x01(\x0b\x32\x1d.pulumirpc.PolicyConfigSchema\x12*\n\x0bpolicy_type\x18\x07 \x01(\x0e\x32\x15.pulumirpc.PolicyType\x12+\n\x08severity\x18\x08 \x01(\x0e\x32\x19.pulumirpc.PolicySeverity\x12\x37\n\tframework\x18\t \x01(\x0b\x32$.pulumirpc.PolicyComplianceFramework\x12\x0c\n\x04tags\x18\n \x03(\t\x12\x19\n\x11remediation_steps\x18\x0b \x01(\t\x12\x0b\n\x03url\x18\x0c \x01(\t\"S\n\x12PolicyConfigSchema\x12+\n\nproperties\x18\x01 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x10\n\x08required\x18\x02 \x03(\t\"r\n\x0cPolicyConfig\x12\x35\n\x10\x65nforcementLevel\x18\x01 \x01(\x0e\x32\x1b.pulumirpc.EnforcementLevel\x12+\n\nproperties\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xb5\x01\n\x18\x43onfigureAnalyzerRequest\x12K\n\x0cpolicyConfig\x18\x01 \x03(\x0b\x32\x35.pulumirpc.ConfigureAnalyzerRequest.PolicyConfigEntry\x1aL\n\x11PolicyConfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.pulumirpc.PolicyConfig:\x02\x38\x01\"d\n\x19PolicyComplianceFramework\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x11\n\treference\x18\x03 \x01(\t\x12\x15\n\rspecification\x18\x04 \x01(\t\":\n\x13PolicyNotApplicable\x12\x13\n\x0bpolicy_name\x18\x01 \x01(\t\x12\x0e\n\x06reason\x18\x02 \x01(\t*L\n\x10\x45nforcementLevel\x12\x0c\n\x08\x41\x44VISORY\x10\x00\x12\r\n\tMANDATORY\x10\x01\x12\x0c\n\x08\x44ISABLED\x10\x02\x12\r\n\tREMEDIATE\x10\x03*V\n\nPolicyType\x12\x17\n\x13POLICY_TYPE_UNKNOWN\x10\x00\x12\x18\n\x14POLICY_TYPE_RESOURCE\x10\x01\x12\x15\n\x11POLICY_TYPE_STACK\x10\x02*\x9e\x01\n\x0ePolicySeverity\x12\x1f\n\x1bPOLICY_SEVERITY_UNSPECIFIED\x10\x00\x12\x17\n\x13POLICY_SEVERITY_LOW\x10\x01\x12\x1a\n\x16POLICY_SEVERITY_MEDIUM\x10\x02\x12\x18\n\x14POLICY_SEVERITY_HIGH\x10\x03\x12\x1c\n\x18POLICY_SEVERITY_CRITICAL\x10\x04\x32\xb7\x05\n\x08\x41nalyzer\x12\x42\n\x07\x41nalyze\x12\x19.pulumirpc.AnalyzeRequest\x1a\x1a.pulumirpc.AnalyzeResponse\"\x00\x12L\n\x0c\x41nalyzeStack\x12\x1e.pulumirpc.AnalyzeStackRequest\x1a\x1a.pulumirpc.AnalyzeResponse\"\x00\x12\x46\n\tRemediate\x12\x19.pulumirpc.AnalyzeRequest\x1a\x1c.pulumirpc.RemediateResponse\"\x00\x12\x44\n\x0fGetAnalyzerInfo\x12\x16.google.protobuf.Empty\x1a\x17.pulumirpc.AnalyzerInfo\"\x00\x12@\n\rGetPluginInfo\x12\x16.google.protobuf.Empty\x1a\x15.pulumirpc.PluginInfo\"\x00\x12J\n\tConfigure\x12#.pulumirpc.ConfigureAnalyzerRequest\x1a\x16.google.protobuf.Empty\"\x00\x12X\n\tHandshake\x12#.pulumirpc.AnalyzerHandshakeRequest\x1a$.pulumirpc.AnalyzerHandshakeResponse\"\x00\x12g\n\x0e\x43onfigureStack\x12(.pulumirpc.AnalyzerStackConfigureRequest\x1a).pulumirpc.AnalyzerStackConfigureResponse\"\x00\x12:\n\x06\x43\x61ncel\x12\x16.google.protobuf.Empty\x1a\x16.google.protobuf.Empty\"\x00\x42\x34Z2github.com/pulumi/pulumi/sdk/v3/proto/go;pulumirpcb\x06proto3"
|
|
13
|
+
|
|
14
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
15
|
+
pool.add_serialized_file(descriptor_data)
|
|
16
|
+
|
|
17
|
+
module Pulumirpc
|
|
18
|
+
AnalyzerStackConfigureRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzerStackConfigureRequest").msgclass
|
|
19
|
+
AnalyzerStackConfigureResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzerStackConfigureResponse").msgclass
|
|
20
|
+
AnalyzerHandshakeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzerHandshakeRequest").msgclass
|
|
21
|
+
AnalyzerHandshakeResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzerHandshakeResponse").msgclass
|
|
22
|
+
AnalyzeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzeRequest").msgclass
|
|
23
|
+
AnalyzerResource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzerResource").msgclass
|
|
24
|
+
AnalyzerResourceOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzerResourceOptions").msgclass
|
|
25
|
+
AnalyzerResourceOptions::CustomTimeouts = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzerResourceOptions.CustomTimeouts").msgclass
|
|
26
|
+
AnalyzerProviderResource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzerProviderResource").msgclass
|
|
27
|
+
AnalyzerPropertyDependencies = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzerPropertyDependencies").msgclass
|
|
28
|
+
AnalyzeStackRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzeStackRequest").msgclass
|
|
29
|
+
AnalyzeResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzeResponse").msgclass
|
|
30
|
+
AnalyzeDiagnostic = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzeDiagnostic").msgclass
|
|
31
|
+
Remediation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.Remediation").msgclass
|
|
32
|
+
RemediateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.RemediateResponse").msgclass
|
|
33
|
+
AnalyzerInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.AnalyzerInfo").msgclass
|
|
34
|
+
PolicyInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.PolicyInfo").msgclass
|
|
35
|
+
PolicyConfigSchema = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.PolicyConfigSchema").msgclass
|
|
36
|
+
PolicyConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.PolicyConfig").msgclass
|
|
37
|
+
ConfigureAnalyzerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.ConfigureAnalyzerRequest").msgclass
|
|
38
|
+
PolicyComplianceFramework = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.PolicyComplianceFramework").msgclass
|
|
39
|
+
PolicyNotApplicable = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.PolicyNotApplicable").msgclass
|
|
40
|
+
EnforcementLevel = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.EnforcementLevel").enummodule
|
|
41
|
+
PolicyType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.PolicyType").enummodule
|
|
42
|
+
PolicySeverity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.PolicySeverity").enummodule
|
|
43
|
+
end
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: pulumi/analyzer.proto for package 'pulumirpc'
|
|
3
|
+
# Original file comments:
|
|
4
|
+
# Copyright 2016-2018, Pulumi Corporation.
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
require 'grpc'
|
|
20
|
+
require 'pulumi/analyzer_pb'
|
|
21
|
+
|
|
22
|
+
module Pulumirpc
|
|
23
|
+
module Analyzer
|
|
24
|
+
# Analyzer provides a pluggable interface for checking resource definitions against some number of
|
|
25
|
+
# resource policies. It is intentionally open-ended, allowing for implementations that check
|
|
26
|
+
# everything from raw resource definitions to entire projects/stacks/snapshots for arbitrary
|
|
27
|
+
# issues -- style, policy, correctness, security, and so on.
|
|
28
|
+
class Service
|
|
29
|
+
|
|
30
|
+
include ::GRPC::GenericService
|
|
31
|
+
|
|
32
|
+
self.marshal_class_method = :encode
|
|
33
|
+
self.unmarshal_class_method = :decode
|
|
34
|
+
self.service_name = 'pulumirpc.Analyzer'
|
|
35
|
+
|
|
36
|
+
# Analyze analyzes a single resource object, and returns any errors that it finds.
|
|
37
|
+
# Called with the "inputs" to the resource, before it is updated.
|
|
38
|
+
rpc :Analyze, ::Pulumirpc::AnalyzeRequest, ::Pulumirpc::AnalyzeResponse
|
|
39
|
+
# AnalyzeStack analyzes all resources within a stack, at the end of a successful
|
|
40
|
+
# preview or update. The provided resources are the "outputs", after any mutations
|
|
41
|
+
# have taken place.
|
|
42
|
+
rpc :AnalyzeStack, ::Pulumirpc::AnalyzeStackRequest, ::Pulumirpc::AnalyzeResponse
|
|
43
|
+
# Remediate optionally transforms a single resource object. This effectively rewrites
|
|
44
|
+
# a single resource object's properties instead of using what was generated by the program.
|
|
45
|
+
rpc :Remediate, ::Pulumirpc::AnalyzeRequest, ::Pulumirpc::RemediateResponse
|
|
46
|
+
# GetAnalyzerInfo returns metadata about the analyzer (e.g., list of policies contained).
|
|
47
|
+
rpc :GetAnalyzerInfo, ::Google::Protobuf::Empty, ::Pulumirpc::AnalyzerInfo
|
|
48
|
+
# GetPluginInfo returns generic information about this plugin, like its version.
|
|
49
|
+
rpc :GetPluginInfo, ::Google::Protobuf::Empty, ::Pulumirpc::PluginInfo
|
|
50
|
+
# Configure configures the analyzer, passing configuration properties for each policy.
|
|
51
|
+
rpc :Configure, ::Pulumirpc::ConfigureAnalyzerRequest, ::Google::Protobuf::Empty
|
|
52
|
+
# `Handshake` is the first call made by the engine to an analyzer. It is used to pass the engine's address to the
|
|
53
|
+
# analyzer so that it may establish its own connections back, and to establish protocol configuration that will be
|
|
54
|
+
# used to communicate between the two parties.
|
|
55
|
+
rpc :Handshake, ::Pulumirpc::AnalyzerHandshakeRequest, ::Pulumirpc::AnalyzerHandshakeResponse
|
|
56
|
+
# `ConfigureStack` is always called if the engine is using the analyzer to analyze resources in a specific stack.
|
|
57
|
+
# This method is not always called, for example if the engine is just booting the analyzer up to call
|
|
58
|
+
# GetAnalyzerInfo.
|
|
59
|
+
rpc :ConfigureStack, ::Pulumirpc::AnalyzerStackConfigureRequest, ::Pulumirpc::AnalyzerStackConfigureResponse
|
|
60
|
+
# Cancel signals the analyzer to gracefully shut down and abort any ongoing analysis operations.
|
|
61
|
+
# Operations aborted in this way will return an error. Since Cancel is advisory and non-blocking,
|
|
62
|
+
# it is up to the host to decide how long to wait after Cancel is called before (e.g.)
|
|
63
|
+
# hard-closing any gRPC connection.
|
|
64
|
+
rpc :Cancel, ::Google::Protobuf::Empty, ::Google::Protobuf::Empty
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
Stub = Service.rpc_stub_class
|
|
68
|
+
end
|
|
69
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: pulumi/callback.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
descriptor_data = "\n\x15pulumi/callback.proto\x12\tpulumirpc\")\n\x08\x43\x61llback\x12\x0e\n\x06target\x18\x01 \x01(\t\x12\r\n\x05token\x18\x02 \x01(\t\"7\n\x15\x43\x61llbackInvokeRequest\x12\r\n\x05token\x18\x01 \x01(\t\x12\x0f\n\x07request\x18\x02 \x01(\x0c\"*\n\x16\x43\x61llbackInvokeResponse\x12\x10\n\x08response\x18\x01 \x01(\x0c\x32\\\n\tCallbacks\x12O\n\x06Invoke\x12 .pulumirpc.CallbackInvokeRequest\x1a!.pulumirpc.CallbackInvokeResponse\"\x00\x42\x34Z2github.com/pulumi/pulumi/sdk/v3/proto/go;pulumirpcb\x06proto3"
|
|
9
|
+
|
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
11
|
+
pool.add_serialized_file(descriptor_data)
|
|
12
|
+
|
|
13
|
+
module Pulumirpc
|
|
14
|
+
Callback = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.Callback").msgclass
|
|
15
|
+
CallbackInvokeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.CallbackInvokeRequest").msgclass
|
|
16
|
+
CallbackInvokeResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.CallbackInvokeResponse").msgclass
|
|
17
|
+
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: pulumi/callback.proto for package 'pulumirpc'
|
|
3
|
+
# Original file comments:
|
|
4
|
+
# Copyright 2016-2023, Pulumi Corporation.
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
require 'grpc'
|
|
20
|
+
require 'pulumi/callback_pb'
|
|
21
|
+
|
|
22
|
+
module Pulumirpc
|
|
23
|
+
module Callbacks
|
|
24
|
+
# Callbacks is a service for invoking functions in one runtime from other processes.
|
|
25
|
+
class Service
|
|
26
|
+
|
|
27
|
+
include ::GRPC::GenericService
|
|
28
|
+
|
|
29
|
+
self.marshal_class_method = :encode
|
|
30
|
+
self.unmarshal_class_method = :decode
|
|
31
|
+
self.service_name = 'pulumirpc.Callbacks'
|
|
32
|
+
|
|
33
|
+
# Invoke invokes a given callback, identified by its token.
|
|
34
|
+
rpc :Invoke, ::Pulumirpc::CallbackInvokeRequest, ::Pulumirpc::CallbackInvokeResponse
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
Stub = Service.rpc_stub_class
|
|
38
|
+
end
|
|
39
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: pulumi/codegen/hcl.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
descriptor_data = "\n\x18pulumi/codegen/hcl.proto\x12\x11pulumirpc.codegen\"1\n\x03Pos\x12\x0c\n\x04line\x18\x01 \x01(\x03\x12\x0e\n\x06\x63olumn\x18\x02 \x01(\x03\x12\x0c\n\x04\x62yte\x18\x03 \x01(\x03\"e\n\x05Range\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12%\n\x05start\x18\x02 \x01(\x0b\x32\x16.pulumirpc.codegen.Pos\x12#\n\x03\x65nd\x18\x03 \x01(\x0b\x32\x16.pulumirpc.codegen.Pos\"\xbc\x01\n\nDiagnostic\x12\x37\n\x08severity\x18\x01 \x01(\x0e\x32%.pulumirpc.codegen.DiagnosticSeverity\x12\x0f\n\x07summary\x18\x02 \x01(\t\x12\x0e\n\x06\x64\x65tail\x18\x03 \x01(\t\x12)\n\x07subject\x18\x04 \x01(\x0b\x32\x18.pulumirpc.codegen.Range\x12)\n\x07\x63ontext\x18\x05 \x01(\x0b\x32\x18.pulumirpc.codegen.Range*H\n\x12\x44iagnosticSeverity\x12\x10\n\x0c\x44IAG_INVALID\x10\x00\x12\x0e\n\nDIAG_ERROR\x10\x01\x12\x10\n\x0c\x44IAG_WARNING\x10\x02\x42\x32Z0github.com/pulumi/pulumi/sdk/v3/proto/go/codegenb\x06proto3"
|
|
9
|
+
|
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
11
|
+
pool.add_serialized_file(descriptor_data)
|
|
12
|
+
|
|
13
|
+
module Pulumirpc
|
|
14
|
+
module Codegen
|
|
15
|
+
Pos = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.codegen.Pos").msgclass
|
|
16
|
+
Range = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.codegen.Range").msgclass
|
|
17
|
+
Diagnostic = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.codegen.Diagnostic").msgclass
|
|
18
|
+
DiagnosticSeverity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.codegen.DiagnosticSeverity").enummodule
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: pulumi/codegen/loader.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
descriptor_data = "\n\x1bpulumi/codegen/loader.proto\x12\x07\x63odegen\"@\n\x10Parameterization\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\x0c\"\x7f\n\x10GetSchemaRequest\x12\x0f\n\x07package\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x14\n\x0c\x64ownload_url\x18\x03 \x01(\t\x12\x33\n\x10parameterization\x18\x04 \x01(\x0b\x32\x19.codegen.Parameterization\"#\n\x11GetSchemaResponse\x12\x0e\n\x06schema\x18\x01 \x01(\x0c\x32N\n\x06Loader\x12\x44\n\tGetSchema\x12\x19.codegen.GetSchemaRequest\x1a\x1a.codegen.GetSchemaResponse\"\x00\x42\x32Z0github.com/pulumi/pulumi/sdk/v3/proto/go/codegenb\x06proto3"
|
|
9
|
+
|
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
11
|
+
pool.add_serialized_file(descriptor_data)
|
|
12
|
+
|
|
13
|
+
module Codegen
|
|
14
|
+
Parameterization = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("codegen.Parameterization").msgclass
|
|
15
|
+
GetSchemaRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("codegen.GetSchemaRequest").msgclass
|
|
16
|
+
GetSchemaResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("codegen.GetSchemaResponse").msgclass
|
|
17
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: pulumi/codegen/loader.proto for package 'codegen'
|
|
3
|
+
# Original file comments:
|
|
4
|
+
# Copyright 2016-2023, Pulumi Corporation.
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
require 'grpc'
|
|
20
|
+
require 'pulumi/codegen/loader_pb'
|
|
21
|
+
|
|
22
|
+
module Codegen
|
|
23
|
+
module Loader
|
|
24
|
+
# Loader is a service for getting schemas from the Pulumi engine for use in code generators and other tools.
|
|
25
|
+
# This is currently unstable and experimental.
|
|
26
|
+
class Service
|
|
27
|
+
|
|
28
|
+
include ::GRPC::GenericService
|
|
29
|
+
|
|
30
|
+
self.marshal_class_method = :encode
|
|
31
|
+
self.unmarshal_class_method = :decode
|
|
32
|
+
self.service_name = 'codegen.Loader'
|
|
33
|
+
|
|
34
|
+
# GetSchema tries to find a schema for the given package and version.
|
|
35
|
+
rpc :GetSchema, ::Codegen::GetSchemaRequest, ::Codegen::GetSchemaResponse
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
Stub = Service.rpc_stub_class
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: pulumi/codegen/mapper.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
descriptor_data = "\n\x1bpulumi/codegen/mapper.proto\x12\x07\x63odegen\"\x82\x01\n\x11GetMappingRequest\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\x17\n\x0fpulumi_provider\x18\x02 \x01(\t\x12\x42\n\x15parameterization_hint\x18\x03 \x01(\x0b\x32#.codegen.MapperParameterizationHint\"J\n\x1aMapperParameterizationHint\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\x0c\"\"\n\x12GetMappingResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x32Q\n\x06Mapper\x12G\n\nGetMapping\x12\x1a.codegen.GetMappingRequest\x1a\x1b.codegen.GetMappingResponse\"\x00\x42\x32Z0github.com/pulumi/pulumi/sdk/v3/proto/go/codegenb\x06proto3"
|
|
9
|
+
|
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
11
|
+
pool.add_serialized_file(descriptor_data)
|
|
12
|
+
|
|
13
|
+
module Codegen
|
|
14
|
+
GetMappingRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("codegen.GetMappingRequest").msgclass
|
|
15
|
+
MapperParameterizationHint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("codegen.MapperParameterizationHint").msgclass
|
|
16
|
+
GetMappingResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("codegen.GetMappingResponse").msgclass
|
|
17
|
+
end
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: pulumi/codegen/mapper.proto for package 'codegen'
|
|
3
|
+
# Original file comments:
|
|
4
|
+
# Copyright 2016-2023, Pulumi Corporation.
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
require 'grpc'
|
|
20
|
+
require 'pulumi/codegen/mapper_pb'
|
|
21
|
+
|
|
22
|
+
module Codegen
|
|
23
|
+
module Mapper
|
|
24
|
+
# Mapper is a service for getting mappings from other ecosystems to Pulumi.
|
|
25
|
+
# This is currently unstable and experimental.
|
|
26
|
+
#
|
|
27
|
+
# Mapper provides methods for retrieving mappings that describe how to map names in some source "provider" (e.g. a
|
|
28
|
+
# Terraform provider, if we are converting from Terraform) to names in appropriate Pulumi packages. So when converting
|
|
29
|
+
# a Terraform program containing code like `resource "aws_s3_bucket" "b" {}`, for instance, we need to know (among
|
|
30
|
+
# other things) that the `aws_s3_bucket` Terraform resource type corresponds to the Pulumi type `aws:s3/bucket:Bucket`,
|
|
31
|
+
# and thus lives in the `aws` package. This is the kind of information that a Mapper provides.
|
|
32
|
+
class Service
|
|
33
|
+
|
|
34
|
+
include ::GRPC::GenericService
|
|
35
|
+
|
|
36
|
+
self.marshal_class_method = :encode
|
|
37
|
+
self.unmarshal_class_method = :decode
|
|
38
|
+
self.service_name = 'codegen.Mapper'
|
|
39
|
+
|
|
40
|
+
# `GetMapping` returns any available mapping data for the given source provider name (so again, this is e.g. the
|
|
41
|
+
# name of a Terraform provider if converting from Terraform). Callers may pass "hints" that describe a Pulumi
|
|
42
|
+
# package that is expected to provide the mapping and satisfy the request, which implementations may use to
|
|
43
|
+
# optimise their efforts to return the best possible mapping. If no matching mapping exists, implementations should
|
|
44
|
+
# return an empty byte array result.
|
|
45
|
+
rpc :GetMapping, ::Codegen::GetMappingRequest, ::Codegen::GetMappingResponse
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
Stub = Service.rpc_stub_class
|
|
49
|
+
end
|
|
50
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: pulumi/converter.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
require 'pulumi/codegen/hcl_pb'
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
descriptor_data = "\n\x16pulumi/converter.proto\x12\tpulumirpc\x1a\x18pulumi/codegen/hcl.proto\":\n\x13\x43onvertStateRequest\x12\x15\n\rmapper_target\x18\x01 \x01(\t\x12\x0c\n\x04\x61rgs\x18\x02 \x03(\t\"\xa3\x01\n\x0eResourceImport\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\n\n\x02id\x18\x03 \x01(\t\x12\x0f\n\x07version\x18\x04 \x01(\t\x12\x19\n\x11pluginDownloadURL\x18\x05 \x01(\t\x12\x14\n\x0clogical_name\x18\x06 \x01(\t\x12\x14\n\x0cis_component\x18\x07 \x01(\x08\x12\x11\n\tis_remote\x18\x08 \x01(\x08\"x\n\x14\x43onvertStateResponse\x12,\n\tresources\x18\x01 \x03(\x0b\x32\x19.pulumirpc.ResourceImport\x12\x32\n\x0b\x64iagnostics\x18\x02 \x03(\x0b\x32\x1d.pulumirpc.codegen.Diagnostic\"\xac\x01\n\x15\x43onvertProgramRequest\x12\x18\n\x10source_directory\x18\x01 \x01(\t\x12\x18\n\x10target_directory\x18\x02 \x01(\t\x12\x15\n\rmapper_target\x18\x03 \x01(\t\x12\x15\n\rloader_target\x18\x04 \x01(\t\x12\x0c\n\x04\x61rgs\x18\x05 \x03(\t\x12#\n\x1bgenerated_project_directory\x18\x06 \x01(\t\"L\n\x16\x43onvertProgramResponse\x12\x32\n\x0b\x64iagnostics\x18\x01 \x03(\x0b\x32\x1d.pulumirpc.codegen.Diagnostic2\xb7\x01\n\tConverter\x12Q\n\x0c\x43onvertState\x12\x1e.pulumirpc.ConvertStateRequest\x1a\x1f.pulumirpc.ConvertStateResponse\"\x00\x12W\n\x0e\x43onvertProgram\x12 .pulumirpc.ConvertProgramRequest\x1a!.pulumirpc.ConvertProgramResponse\"\x00\x42\x34Z2github.com/pulumi/pulumi/sdk/v3/proto/go;pulumirpcb\x06proto3"
|
|
11
|
+
|
|
12
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
13
|
+
pool.add_serialized_file(descriptor_data)
|
|
14
|
+
|
|
15
|
+
module Pulumirpc
|
|
16
|
+
ConvertStateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.ConvertStateRequest").msgclass
|
|
17
|
+
ResourceImport = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.ResourceImport").msgclass
|
|
18
|
+
ConvertStateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.ConvertStateResponse").msgclass
|
|
19
|
+
ConvertProgramRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.ConvertProgramRequest").msgclass
|
|
20
|
+
ConvertProgramResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.ConvertProgramResponse").msgclass
|
|
21
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: pulumi/converter.proto for package 'pulumirpc'
|
|
3
|
+
# Original file comments:
|
|
4
|
+
# Copyright 2016-2023, Pulumi Corporation.
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
require 'grpc'
|
|
20
|
+
require 'pulumi/converter_pb'
|
|
21
|
+
|
|
22
|
+
module Pulumirpc
|
|
23
|
+
module Converter
|
|
24
|
+
# Converter is a service for converting between other ecosystems and Pulumi.
|
|
25
|
+
# This is currently unstable and experimental.
|
|
26
|
+
class Service
|
|
27
|
+
|
|
28
|
+
include ::GRPC::GenericService
|
|
29
|
+
|
|
30
|
+
self.marshal_class_method = :encode
|
|
31
|
+
self.unmarshal_class_method = :decode
|
|
32
|
+
self.service_name = 'pulumirpc.Converter'
|
|
33
|
+
|
|
34
|
+
# ConvertState converts state from the target ecosystem into a form that can be imported into Pulumi.
|
|
35
|
+
rpc :ConvertState, ::Pulumirpc::ConvertStateRequest, ::Pulumirpc::ConvertStateResponse
|
|
36
|
+
# ConvertProgram converts a program from the target ecosystem into a form that can be used with Pulumi.
|
|
37
|
+
rpc :ConvertProgram, ::Pulumirpc::ConvertProgramRequest, ::Pulumirpc::ConvertProgramResponse
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
Stub = Service.rpc_stub_class
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: pulumi/engine.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
require 'google/protobuf/empty_pb'
|
|
8
|
+
require 'google/protobuf/struct_pb'
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
descriptor_data = "\n\x13pulumi/engine.proto\x12\tpulumirpc\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/protobuf/struct.proto\"y\n\nLogRequest\x12(\n\x08severity\x18\x01 \x01(\x0e\x32\x16.pulumirpc.LogSeverity\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x0b\n\x03urn\x18\x03 \x01(\t\x12\x10\n\x08streamId\x18\x04 \x01(\x05\x12\x11\n\tephemeral\x18\x05 \x01(\x08\"\x18\n\x16GetRootResourceRequest\"&\n\x17GetRootResourceResponse\x12\x0b\n\x03urn\x18\x01 \x01(\t\"%\n\x16SetRootResourceRequest\x12\x0b\n\x03urn\x18\x01 \x01(\t\"\x19\n\x17SetRootResourceResponse\"Q\n\x15StartDebuggingRequest\x12\'\n\x06\x63onfig\x18\x01 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x0f\n\x07message\x18\x02 \x01(\t\";\n\x1bRequirePulumiVersionRequest\x12\x1c\n\x14pulumi_version_range\x18\x01 \x01(\t\"\x1e\n\x1cRequirePulumiVersionResponse*:\n\x0bLogSeverity\x12\t\n\x05\x44\x45\x42UG\x10\x00\x12\x08\n\x04INFO\x10\x01\x12\x0b\n\x07WARNING\x10\x02\x12\t\n\x05\x45RROR\x10\x03\x32\xb1\x03\n\x06\x45ngine\x12\x36\n\x03Log\x12\x15.pulumirpc.LogRequest\x1a\x16.google.protobuf.Empty\"\x00\x12Z\n\x0fGetRootResource\x12!.pulumirpc.GetRootResourceRequest\x1a\".pulumirpc.GetRootResourceResponse\"\x00\x12Z\n\x0fSetRootResource\x12!.pulumirpc.SetRootResourceRequest\x1a\".pulumirpc.SetRootResourceResponse\"\x00\x12L\n\x0eStartDebugging\x12 .pulumirpc.StartDebuggingRequest\x1a\x16.google.protobuf.Empty\"\x00\x12i\n\x14RequirePulumiVersion\x12&.pulumirpc.RequirePulumiVersionRequest\x1a\'.pulumirpc.RequirePulumiVersionResponse\"\x00\x42\x34Z2github.com/pulumi/pulumi/sdk/v3/proto/go;pulumirpcb\x06proto3"
|
|
12
|
+
|
|
13
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
14
|
+
pool.add_serialized_file(descriptor_data)
|
|
15
|
+
|
|
16
|
+
module Pulumirpc
|
|
17
|
+
LogRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.LogRequest").msgclass
|
|
18
|
+
GetRootResourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.GetRootResourceRequest").msgclass
|
|
19
|
+
GetRootResourceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.GetRootResourceResponse").msgclass
|
|
20
|
+
SetRootResourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.SetRootResourceRequest").msgclass
|
|
21
|
+
SetRootResourceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.SetRootResourceResponse").msgclass
|
|
22
|
+
StartDebuggingRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.StartDebuggingRequest").msgclass
|
|
23
|
+
RequirePulumiVersionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.RequirePulumiVersionRequest").msgclass
|
|
24
|
+
RequirePulumiVersionResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.RequirePulumiVersionResponse").msgclass
|
|
25
|
+
LogSeverity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("pulumirpc.LogSeverity").enummodule
|
|
26
|
+
end
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: pulumi/engine.proto for package 'pulumirpc'
|
|
3
|
+
# Original file comments:
|
|
4
|
+
# Copyright 2016-2026, Pulumi Corporation.
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
require 'grpc'
|
|
20
|
+
require 'pulumi/engine_pb'
|
|
21
|
+
|
|
22
|
+
module Pulumirpc
|
|
23
|
+
module Engine
|
|
24
|
+
# Engine is an auxiliary service offered to language and resource provider plugins. Its main purpose today is
|
|
25
|
+
# to serve as a common logging endpoint, but it also serves as a state storage mechanism for language hosts
|
|
26
|
+
# that can't store their own global state.
|
|
27
|
+
class Service
|
|
28
|
+
|
|
29
|
+
include ::GRPC::GenericService
|
|
30
|
+
|
|
31
|
+
self.marshal_class_method = :encode
|
|
32
|
+
self.unmarshal_class_method = :decode
|
|
33
|
+
self.service_name = 'pulumirpc.Engine'
|
|
34
|
+
|
|
35
|
+
# Log logs a global message in the engine, including errors and warnings.
|
|
36
|
+
rpc :Log, ::Pulumirpc::LogRequest, ::Google::Protobuf::Empty
|
|
37
|
+
# GetRootResource gets the URN of the root resource, the resource that should be the root of all
|
|
38
|
+
# otherwise-unparented resources.
|
|
39
|
+
rpc :GetRootResource, ::Pulumirpc::GetRootResourceRequest, ::Pulumirpc::GetRootResourceResponse
|
|
40
|
+
# SetRootResource sets the URN of the root resource.
|
|
41
|
+
rpc :SetRootResource, ::Pulumirpc::SetRootResourceRequest, ::Pulumirpc::SetRootResourceResponse
|
|
42
|
+
# StartDebugging indicates to the engine that the program has started under a debugger, and the engine
|
|
43
|
+
# should notify the user of how to connect to the debugger.
|
|
44
|
+
rpc :StartDebugging, ::Pulumirpc::StartDebuggingRequest, ::Google::Protobuf::Empty
|
|
45
|
+
# RequirePulumiVersion checks that the version of the engine satisfies the passed in range.
|
|
46
|
+
rpc :RequirePulumiVersion, ::Pulumirpc::RequirePulumiVersionRequest, ::Pulumirpc::RequirePulumiVersionResponse
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
Stub = Service.rpc_stub_class
|
|
50
|
+
end
|
|
51
|
+
end
|