Class: RailsAiBridge::Introspectors::DevOpsIntrospector

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_ai_bridge/introspectors/devops_introspector.rb

Overview

Discovers DevOps configuration: Puma, Procfile, health checks, Dockerfile, deployment tools.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(app) ⇒ DevOpsIntrospector

Returns a new instance of DevOpsIntrospector.

Parameters:

  • app (Rails::Application)

    the Rails application to introspect



11
12
13
# File 'lib/rails_ai_bridge/introspectors/devops_introspector.rb', line 11

def initialize(app)
  @app = app
end

Instance Attribute Details

#appObject (readonly)

Returns the value of attribute app.



8
9
10
# File 'lib/rails_ai_bridge/introspectors/devops_introspector.rb', line 8

def app
  @app
end

Instance Method Details

#callHash

Discovers DevOps configuration: Puma config, Procfile entries, health check routes, Docker setup, and deployment tooling.

Returns:

  • (Hash)

    with :puma, :procfile, :health_check, :docker, and :deployment on success; { error: String } on any rescued StandardError



21
22
23
24
25
26
27
28
29
30
31
# File 'lib/rails_ai_bridge/introspectors/devops_introspector.rb', line 21

def call
  {
    puma: extract_puma_config,
    procfile: extract_procfile,
    health_check: detect_health_check,
    docker: extract_docker_info,
    deployment: detect_deployment_tool
  }
rescue StandardError => error
  { error: error.message }
end