cpflow 4.1.0 → 4.2.0

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 (55) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/claude-code-review.yml +44 -0
  3. data/.github/workflows/claude.yml +50 -0
  4. data/.gitignore +6 -0
  5. data/CHANGELOG.md +17 -1
  6. data/Gemfile.lock +2 -2
  7. data/README.md +17 -14
  8. data/docs/ci-automation.md +28 -0
  9. data/docs/commands.md +21 -1
  10. data/docs/terraform/details.md +415 -0
  11. data/docs/terraform/example/.controlplane/controlplane.yml +29 -0
  12. data/docs/terraform/example/.controlplane/templates/app.yml +38 -0
  13. data/docs/terraform/example/.controlplane/templates/postgres.yml +30 -0
  14. data/docs/terraform/example/.controlplane/templates/rails.yml +26 -0
  15. data/docs/terraform/overview.md +105 -0
  16. data/lib/command/base.rb +29 -5
  17. data/lib/command/base_sub_command.rb +15 -0
  18. data/lib/command/generate.rb +1 -1
  19. data/lib/command/ps.rb +1 -1
  20. data/lib/command/ps_stop.rb +2 -1
  21. data/lib/command/ps_wait.rb +5 -1
  22. data/lib/command/run.rb +4 -21
  23. data/lib/command/terraform/base.rb +35 -0
  24. data/lib/command/terraform/generate.rb +99 -0
  25. data/lib/command/terraform/import.rb +79 -0
  26. data/lib/core/config.rb +1 -1
  27. data/lib/core/controlplane.rb +7 -6
  28. data/lib/core/controlplane_api_direct.rb +23 -1
  29. data/lib/core/shell.rb +9 -4
  30. data/lib/core/terraform_config/agent.rb +31 -0
  31. data/lib/core/terraform_config/audit_context.rb +31 -0
  32. data/lib/core/terraform_config/base.rb +25 -0
  33. data/lib/core/terraform_config/dsl.rb +102 -0
  34. data/lib/core/terraform_config/generator.rb +184 -0
  35. data/lib/core/terraform_config/gvc.rb +63 -0
  36. data/lib/core/terraform_config/identity.rb +35 -0
  37. data/lib/core/terraform_config/local_variable.rb +30 -0
  38. data/lib/core/terraform_config/policy.rb +151 -0
  39. data/lib/core/terraform_config/provider.rb +22 -0
  40. data/lib/core/terraform_config/required_provider.rb +23 -0
  41. data/lib/core/terraform_config/secret.rb +138 -0
  42. data/lib/core/terraform_config/volume_set.rb +155 -0
  43. data/lib/core/terraform_config/workload/main.tf +316 -0
  44. data/lib/core/terraform_config/workload/required_providers.tf +8 -0
  45. data/lib/core/terraform_config/workload/variables.tf +263 -0
  46. data/lib/core/terraform_config/workload.rb +132 -0
  47. data/lib/cpflow/version.rb +1 -1
  48. data/lib/cpflow.rb +51 -9
  49. data/lib/generator_templates/templates/postgres.yml +1 -1
  50. data/lib/patches/array.rb +8 -0
  51. data/lib/patches/hash.rb +47 -0
  52. data/lib/patches/string.rb +34 -0
  53. data/script/update_command_docs +6 -2
  54. metadata +37 -4
  55. /data/docs/{migrating.md → migrating-heroku-to-control-plane.md} +0 -0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cpflow
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.0
4
+ version: 4.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Gordon
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-12-17 00:00:00.000000000 Z
12
+ date: 2026-02-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: dotenv
@@ -77,6 +77,8 @@ extensions: []
77
77
  extra_rdoc_files: []
78
78
  files:
79
79
  - ".github/workflows/check_cpln_links.yml"
80
+ - ".github/workflows/claude-code-review.yml"
81
+ - ".github/workflows/claude.yml"
80
82
  - ".github/workflows/command_docs.yml"
81
83
  - ".github/workflows/rspec-shared.yml"
82
84
  - ".github/workflows/rspec-specific.yml"
@@ -100,18 +102,26 @@ files:
100
102
  - docs/assets/grafana-alert.png
101
103
  - docs/assets/memcached.png
102
104
  - docs/assets/sidekiq-pre-stop-hook.png
105
+ - docs/ci-automation.md
103
106
  - docs/commands.md
104
107
  - docs/dns.md
105
- - docs/migrating.md
108
+ - docs/migrating-heroku-to-control-plane.md
106
109
  - docs/postgres.md
107
110
  - docs/redis.md
108
111
  - docs/secrets-and-env-values.md
112
+ - docs/terraform/details.md
113
+ - docs/terraform/example/.controlplane/controlplane.yml
114
+ - docs/terraform/example/.controlplane/templates/app.yml
115
+ - docs/terraform/example/.controlplane/templates/postgres.yml
116
+ - docs/terraform/example/.controlplane/templates/rails.yml
117
+ - docs/terraform/overview.md
109
118
  - docs/tips.md
110
119
  - docs/troubleshooting.md
111
120
  - examples/circleci.yml
112
121
  - examples/controlplane.yml
113
122
  - lib/command/apply_template.rb
114
123
  - lib/command/base.rb
124
+ - lib/command/base_sub_command.rb
115
125
  - lib/command/build_image.rb
116
126
  - lib/command/cleanup_images.rb
117
127
  - lib/command/cleanup_stale_apps.rb
@@ -141,6 +151,9 @@ files:
141
151
  - lib/command/ps_wait.rb
142
152
  - lib/command/run.rb
143
153
  - lib/command/setup_app.rb
154
+ - lib/command/terraform/base.rb
155
+ - lib/command/terraform/generate.rb
156
+ - lib/command/terraform/import.rb
144
157
  - lib/command/test.rb
145
158
  - lib/command/version.rb
146
159
  - lib/constants/exit_code.rb
@@ -153,6 +166,23 @@ files:
153
166
  - lib/core/maintenance_mode.rb
154
167
  - lib/core/shell.rb
155
168
  - lib/core/template_parser.rb
169
+ - lib/core/terraform_config/agent.rb
170
+ - lib/core/terraform_config/audit_context.rb
171
+ - lib/core/terraform_config/base.rb
172
+ - lib/core/terraform_config/dsl.rb
173
+ - lib/core/terraform_config/generator.rb
174
+ - lib/core/terraform_config/gvc.rb
175
+ - lib/core/terraform_config/identity.rb
176
+ - lib/core/terraform_config/local_variable.rb
177
+ - lib/core/terraform_config/policy.rb
178
+ - lib/core/terraform_config/provider.rb
179
+ - lib/core/terraform_config/required_provider.rb
180
+ - lib/core/terraform_config/secret.rb
181
+ - lib/core/terraform_config/volume_set.rb
182
+ - lib/core/terraform_config/workload.rb
183
+ - lib/core/terraform_config/workload/main.tf
184
+ - lib/core/terraform_config/workload/required_providers.tf
185
+ - lib/core/terraform_config/workload/variables.tf
156
186
  - lib/cpflow.rb
157
187
  - lib/cpflow/version.rb
158
188
  - lib/deprecated_commands.json
@@ -162,6 +192,9 @@ files:
162
192
  - lib/generator_templates/templates/app.yml
163
193
  - lib/generator_templates/templates/postgres.yml
164
194
  - lib/generator_templates/templates/rails.yml
195
+ - lib/patches/array.rb
196
+ - lib/patches/hash.rb
197
+ - lib/patches/string.rb
165
198
  - lib/patches/thor.rb
166
199
  - rakelib/create_release.rake
167
200
  - script/add_command
@@ -198,7 +231,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
198
231
  - !ruby/object:Gem::Version
199
232
  version: '0'
200
233
  requirements: []
201
- rubygems_version: 3.5.13
234
+ rubygems_version: 3.5.11
202
235
  signing_key:
203
236
  specification_version: 4
204
237
  summary: Control Plane Flow