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.
Files changed (57) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/README.md +39 -0
  4. data/Rakefile +8 -0
  5. data/exe/pulumi-language-ruby +39 -0
  6. data/lib/ruby_pulumi/generated/pulumi/alias_pb.rb +16 -0
  7. data/lib/ruby_pulumi/generated/pulumi/analyzer_pb.rb +43 -0
  8. data/lib/ruby_pulumi/generated/pulumi/analyzer_services_pb.rb +69 -0
  9. data/lib/ruby_pulumi/generated/pulumi/callback_pb.rb +17 -0
  10. data/lib/ruby_pulumi/generated/pulumi/callback_services_pb.rb +39 -0
  11. data/lib/ruby_pulumi/generated/pulumi/codegen/hcl_pb.rb +20 -0
  12. data/lib/ruby_pulumi/generated/pulumi/codegen/loader_pb.rb +17 -0
  13. data/lib/ruby_pulumi/generated/pulumi/codegen/loader_services_pb.rb +40 -0
  14. data/lib/ruby_pulumi/generated/pulumi/codegen/mapper_pb.rb +17 -0
  15. data/lib/ruby_pulumi/generated/pulumi/codegen/mapper_services_pb.rb +50 -0
  16. data/lib/ruby_pulumi/generated/pulumi/converter_pb.rb +21 -0
  17. data/lib/ruby_pulumi/generated/pulumi/converter_services_pb.rb +42 -0
  18. data/lib/ruby_pulumi/generated/pulumi/engine_pb.rb +26 -0
  19. data/lib/ruby_pulumi/generated/pulumi/engine_services_pb.rb +51 -0
  20. data/lib/ruby_pulumi/generated/pulumi/errors_pb.rb +17 -0
  21. data/lib/ruby_pulumi/generated/pulumi/events_pb.rb +17 -0
  22. data/lib/ruby_pulumi/generated/pulumi/events_services_pb.rb +45 -0
  23. data/lib/ruby_pulumi/generated/pulumi/language_pb.rb +55 -0
  24. data/lib/ruby_pulumi/generated/pulumi/language_services_pb.rb +121 -0
  25. data/lib/ruby_pulumi/generated/pulumi/plugin_pb.rb +19 -0
  26. data/lib/ruby_pulumi/generated/pulumi/provider_pb.rb +66 -0
  27. data/lib/ruby_pulumi/generated/pulumi/provider_services_pb.rb +232 -0
  28. data/lib/ruby_pulumi/generated/pulumi/resource_pb.rb +51 -0
  29. data/lib/ruby_pulumi/generated/pulumi/resource_services_pb.rb +64 -0
  30. data/lib/ruby_pulumi/generated/pulumi/resource_status_pb.rb +23 -0
  31. data/lib/ruby_pulumi/generated/pulumi/resource_status_services_pb.rb +44 -0
  32. data/lib/ruby_pulumi/generated/pulumi/source_pb.rb +17 -0
  33. data/lib/ruby_pulumi/generated/pulumi/testing/language_pb.rb +24 -0
  34. data/lib/ruby_pulumi/generated/pulumi/testing/language_services_pb.rb +47 -0
  35. data/lib/ruby_pulumi/language_host.rb +46 -0
  36. data/lib/ruby_pulumi/pulumi.rb +2 -0
  37. data/lib/ruby_pulumi/resource.rb +24 -0
  38. data/lib/ruby_pulumi/runtime.rb +7 -0
  39. data/pulumi/alias.proto +38 -0
  40. data/pulumi/analyzer.proto +293 -0
  41. data/pulumi/callback.proto +44 -0
  42. data/pulumi/codegen/hcl.proto +89 -0
  43. data/pulumi/codegen/loader.proto +51 -0
  44. data/pulumi/codegen/mapper.proto +74 -0
  45. data/pulumi/converter.proto +94 -0
  46. data/pulumi/engine.proto +113 -0
  47. data/pulumi/errors.proto +38 -0
  48. data/pulumi/events.proto +39 -0
  49. data/pulumi/language.proto +653 -0
  50. data/pulumi/plugin.proto +66 -0
  51. data/pulumi/provider.proto +1227 -0
  52. data/pulumi/resource.proto +394 -0
  53. data/pulumi/resource_status.proto +172 -0
  54. data/pulumi/source.proto +36 -0
  55. data/pulumi/testing/language.proto +106 -0
  56. data/sig/pulumi/language/ruby.rbs +8 -0
  57. metadata +125 -0
@@ -0,0 +1,106 @@
1
+ // Copyright 2016-2023, Pulumi Corporation.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package pulumirpc.testing;
18
+
19
+ option go_package = "github.com/pulumi/pulumi/sdk/v3/proto/go/testing";
20
+
21
+ // LanguageTest is the interface to the pulumi language test framework. This is _highly_ experimental and
22
+ // currently subject to breaking changes without warning.
23
+ service LanguageTest {
24
+ // GetLanguageTests returns a list of all the language tests.
25
+ rpc GetLanguageTests(GetLanguageTestsRequest) returns (GetLanguageTestsResponse) {}
26
+
27
+ // PrepareLanguageTests prepares the engine to run language tests. It sets up a stable artifacts folder
28
+ // (which should be .gitignore'd) and fills it with the core SDK artifact.
29
+ rpc PrepareLanguageTests(PrepareLanguageTestsRequest) returns (PrepareLanguageTestsResponse) {}
30
+
31
+ // RunLanguageTest runs a single test of the language plugin.
32
+ rpc RunLanguageTest(RunLanguageTestRequest) returns (RunLanguageTestResponse) {}
33
+ }
34
+
35
+ message GetLanguageTestsRequest {
36
+
37
+ }
38
+
39
+ message GetLanguageTestsResponse {
40
+ repeated string tests = 1;
41
+ }
42
+
43
+ message PrepareLanguageTestsRequest {
44
+ message Replacement {
45
+ string path = 1;
46
+ string pattern = 2;
47
+ string replacement = 3;
48
+ }
49
+
50
+ // ProgramOverrides represent overrides whereby a test may specify a set of hardcoded or pre-generated programs to
51
+ // be used, in place of running GenerateProject on source PCL. This is useful for testing SDK functionality when the
52
+ // requisite program code generation is not yet complete enough to support generating programs which exercise that
53
+ // functionality.
54
+ message ProgramOverride {
55
+ // A list of paths to directories containing programs to use for the test. The length of this list should
56
+ // correspond to the number of `Runs` in the test, with each entry being used for the corresponding run (e.g.
57
+ // entry 0 for run 0, entry 1 for run 1, etc.).
58
+ repeated string paths = 1;
59
+ }
60
+
61
+ string language_plugin_name = 1;
62
+ string language_plugin_target = 2;
63
+ string snapshot_directory = 3;
64
+ string temporary_directory = 4;
65
+ string core_sdk_directory = 5;
66
+ string core_sdk_version = 6;
67
+ repeated Replacement snapshot_edits = 7;
68
+
69
+ // a JSON string that will be inserted into every schema loaded (for both GeneratePackage and GenerateProject) in
70
+ // the "Languages[language_plugin_name]" field. This can be used to test language specific options such as
71
+ // inputTypes in python.
72
+ string language_info = 8;
73
+
74
+ // A map of test names to program overrides. This may be used to specify tests for which program generation should
75
+ // not be run (e.g. because it does not support the necessary features), but where the test can still execute and
76
+ // pass. This is useful in cases where e.g. a language's code SDK is relatively feature complete (and thus it's
77
+ // desirable to test that feature set) but where program code generation is not yet complete enough to support
78
+ // generating programs which exercise that functionality.
79
+ map<string, ProgramOverride> program_overrides = 9;
80
+
81
+ // A folder pointing to policy packs to use for the tests. This is used to test the language plugin's policy pack
82
+ // support. These must be manually written.
83
+ string policy_pack_directory = 10;
84
+
85
+ // If true, tests will be run in "local" mode, meaning all SDKs will be generated with the `--local` flag and not packed.
86
+ bool local = 11;
87
+
88
+ // The path to a directory containing provider plugins to be used for the "provider-" tests.
89
+ string providers_directory = 12;
90
+ }
91
+
92
+ message PrepareLanguageTestsResponse {
93
+ string token = 1;
94
+ }
95
+
96
+ message RunLanguageTestRequest {
97
+ string token = 1;
98
+ string test = 2;
99
+ }
100
+
101
+ message RunLanguageTestResponse {
102
+ bool success = 1;
103
+ repeated string messages = 2;
104
+ string stdout = 3;
105
+ string stderr = 4;
106
+ }
@@ -0,0 +1,8 @@
1
+ module Pulumi
2
+ module Language
3
+ module Ruby
4
+ VERSION: String
5
+ # See the writing guide of rbs: https://github.com/ruby/rbs#guides
6
+ end
7
+ end
8
+ end
metadata ADDED
@@ -0,0 +1,125 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pulumi-language-ruby
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Petris Fernandes
8
+ bindir: exe
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: grpc
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '1.0'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "~>"
24
+ - !ruby/object:Gem::Version
25
+ version: '1.0'
26
+ - !ruby/object:Gem::Dependency
27
+ name: grpc-tools
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - "~>"
31
+ - !ruby/object:Gem::Version
32
+ version: '1.0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '1.0'
40
+ email:
41
+ - petrisrf@gmail.com
42
+ executables:
43
+ - pulumi-language-ruby
44
+ extensions: []
45
+ extra_rdoc_files: []
46
+ files:
47
+ - LICENSE.txt
48
+ - README.md
49
+ - Rakefile
50
+ - exe/pulumi-language-ruby
51
+ - lib/ruby_pulumi/generated/pulumi/alias_pb.rb
52
+ - lib/ruby_pulumi/generated/pulumi/analyzer_pb.rb
53
+ - lib/ruby_pulumi/generated/pulumi/analyzer_services_pb.rb
54
+ - lib/ruby_pulumi/generated/pulumi/callback_pb.rb
55
+ - lib/ruby_pulumi/generated/pulumi/callback_services_pb.rb
56
+ - lib/ruby_pulumi/generated/pulumi/codegen/hcl_pb.rb
57
+ - lib/ruby_pulumi/generated/pulumi/codegen/loader_pb.rb
58
+ - lib/ruby_pulumi/generated/pulumi/codegen/loader_services_pb.rb
59
+ - lib/ruby_pulumi/generated/pulumi/codegen/mapper_pb.rb
60
+ - lib/ruby_pulumi/generated/pulumi/codegen/mapper_services_pb.rb
61
+ - lib/ruby_pulumi/generated/pulumi/converter_pb.rb
62
+ - lib/ruby_pulumi/generated/pulumi/converter_services_pb.rb
63
+ - lib/ruby_pulumi/generated/pulumi/engine_pb.rb
64
+ - lib/ruby_pulumi/generated/pulumi/engine_services_pb.rb
65
+ - lib/ruby_pulumi/generated/pulumi/errors_pb.rb
66
+ - lib/ruby_pulumi/generated/pulumi/events_pb.rb
67
+ - lib/ruby_pulumi/generated/pulumi/events_services_pb.rb
68
+ - lib/ruby_pulumi/generated/pulumi/language_pb.rb
69
+ - lib/ruby_pulumi/generated/pulumi/language_services_pb.rb
70
+ - lib/ruby_pulumi/generated/pulumi/plugin_pb.rb
71
+ - lib/ruby_pulumi/generated/pulumi/provider_pb.rb
72
+ - lib/ruby_pulumi/generated/pulumi/provider_services_pb.rb
73
+ - lib/ruby_pulumi/generated/pulumi/resource_pb.rb
74
+ - lib/ruby_pulumi/generated/pulumi/resource_services_pb.rb
75
+ - lib/ruby_pulumi/generated/pulumi/resource_status_pb.rb
76
+ - lib/ruby_pulumi/generated/pulumi/resource_status_services_pb.rb
77
+ - lib/ruby_pulumi/generated/pulumi/source_pb.rb
78
+ - lib/ruby_pulumi/generated/pulumi/testing/language_pb.rb
79
+ - lib/ruby_pulumi/generated/pulumi/testing/language_services_pb.rb
80
+ - lib/ruby_pulumi/language_host.rb
81
+ - lib/ruby_pulumi/pulumi.rb
82
+ - lib/ruby_pulumi/resource.rb
83
+ - lib/ruby_pulumi/runtime.rb
84
+ - pulumi/alias.proto
85
+ - pulumi/analyzer.proto
86
+ - pulumi/callback.proto
87
+ - pulumi/codegen/hcl.proto
88
+ - pulumi/codegen/loader.proto
89
+ - pulumi/codegen/mapper.proto
90
+ - pulumi/converter.proto
91
+ - pulumi/engine.proto
92
+ - pulumi/errors.proto
93
+ - pulumi/events.proto
94
+ - pulumi/language.proto
95
+ - pulumi/plugin.proto
96
+ - pulumi/provider.proto
97
+ - pulumi/resource.proto
98
+ - pulumi/resource_status.proto
99
+ - pulumi/source.proto
100
+ - pulumi/testing/language.proto
101
+ - sig/pulumi/language/ruby.rbs
102
+ homepage: https://github.com/petrenkorf/pulumi-language-ruby
103
+ licenses:
104
+ - MIT
105
+ metadata:
106
+ homepage_uri: https://github.com/petrenkorf/pulumi-language-ruby
107
+ source_code_uri: https://github.com/petrenkorf/pulumi-language-ruby
108
+ rdoc_options: []
109
+ require_paths:
110
+ - lib
111
+ required_ruby_version: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - ">="
114
+ - !ruby/object:Gem::Version
115
+ version: 3.2.0
116
+ required_rubygems_version: !ruby/object:Gem::Requirement
117
+ requirements:
118
+ - - ">="
119
+ - !ruby/object:Gem::Version
120
+ version: '0'
121
+ requirements: []
122
+ rubygems_version: 3.6.9
123
+ specification_version: 4
124
+ summary: Pulumi for Ruby
125
+ test_files: []