Module: Kuby
- Defined in:
- lib/kuby.rb,
lib/kuby/tasks.rb,
lib/kuby/docker.rb,
lib/kuby/railtie.rb,
lib/kuby/version.rb,
lib/kuby/cli_base.rb,
lib/kuby/definition.rb,
lib/kuby/docker/cli.rb,
lib/kuby/kubernetes.rb,
lib/kuby/middleware.rb,
lib/kuby/docker/spec.rb,
lib/kuby/docker/tags.rb,
lib/kuby/basic_logger.rb,
lib/kuby/docker/phase.rb,
lib/kuby/docker/alpine.rb,
lib/kuby/docker/debian.rb,
lib/kuby/docker/errors.rb,
lib/kuby/trailing_hash.rb,
lib/kuby/docker/metadata.rb,
lib/kuby/docker/packages.rb,
lib/kuby/kubernetes/spec.rb,
lib/kuby/docker/copy_phase.rb,
lib/kuby/docker/dockerfile.rb,
lib/kuby/docker/local_tags.rb,
lib/kuby/docker/yarn_phase.rb,
lib/kuby/kubernetes/errors.rb,
lib/kuby/kubernetes/plugin.rb,
lib/kuby/docker/credentials.rb,
lib/kuby/docker/layer_stack.rb,
lib/kuby/docker/remote_tags.rb,
lib/kuby/docker/setup_phase.rb,
lib/kuby/kubernetes/plugins.rb,
lib/kuby/docker/assets_phase.rb,
lib/kuby/docker/package_list.rb,
lib/kuby/kubernetes/deployer.rb,
lib/kuby/kubernetes/manifest.rb,
lib/kuby/kubernetes/provider.rb,
lib/kuby/docker/bundler_phase.rb,
lib/kuby/docker/package_phase.rb,
lib/kuby/docker/packages/yarn.rb,
lib/kuby/docker/timestamp_tag.rb,
lib/kuby/docker/packages/nodejs.rb,
lib/kuby/docker/webserver_phase.rb,
lib/kuby/docker/packages/package.rb,
lib/kuby/middleware/health_check.rb,
lib/kuby/kubernetes/docker_config.rb,
lib/kuby/kubernetes/registry_secret.rb,
lib/kuby/kubernetes/minikube_provider.rb,
lib/kuby/kubernetes/plugins/rails_app.rb,
lib/kuby/docker/packages/managed_package.rb,
lib/kuby/kubernetes/plugins/nginx_ingress.rb,
lib/kuby/kubernetes/plugins/rails_app/mysql.rb,
lib/kuby/kubernetes/plugins/rails_app/plugin.rb,
lib/kuby/kubernetes/plugins/rails_app/sqlite.rb,
lib/kuby/kubernetes/plugins/rails_app/database.rb,
lib/kuby/kubernetes/plugins/rails_app/postgres.rb,
lib/kuby/kubernetes/plugins/rails_app/rewrite_db_config.rb
Defined Under Namespace
Modules: Docker, Kubernetes, Middleware
Classes: BasicLogger, CLIBase, Definition, Railtie, Tasks, TrailingHash, UndefinedEnvironmentError
Constant Summary
collapse
- VERSION =
'0.3.0'
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.definition(environment = env) ⇒ Object
Returns the value of attribute definition.
16
17
18
|
# File 'lib/kuby.rb', line 16
def definition
@definition
end
|
.logger ⇒ Object
Returns the value of attribute logger.
17
18
19
|
# File 'lib/kuby.rb', line 17
def logger
@logger
end
|
Class Method Details
.define(environment, app = Rails.application, &block) ⇒ Object
19
20
21
22
|
# File 'lib/kuby.rb', line 19
def define(environment, app = Rails.application, &block)
environment = environment.to_s
definitions[environment] ||= Definition.new(environment, app, &block)
end
|
.definitions ⇒ Object
24
25
26
|
# File 'lib/kuby.rb', line 24
def definitions
@definitions ||= {}
end
|
.distros ⇒ Object
51
52
53
|
# File 'lib/kuby.rb', line 51
def distros
@distros ||= {}
end
|
.env ⇒ Object
78
79
80
81
82
|
# File 'lib/kuby.rb', line 78
def env
ENV.fetch('KUBY_ENV') do
(definitions.keys.first || Rails.env).to_s
end
end
|
.packages ⇒ Object
74
75
76
|
# File 'lib/kuby.rb', line 74
def packages
@packages ||= {}
end
|
.plugins ⇒ Object
55
56
57
|
# File 'lib/kuby.rb', line 55
def plugins
@plugins ||= {}
end
|
.providers ⇒ Object
39
40
41
|
# File 'lib/kuby.rb', line 39
def providers
@providers ||= {}
end
|
.register_distro(distro_name, distro_klass) ⇒ Object
47
48
49
|
# File 'lib/kuby.rb', line 47
def register_distro(distro_name, distro_klass)
distros[distro_name] = distro_klass
end
|
.register_package(package_name, package_def) ⇒ Object
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# File 'lib/kuby.rb', line 59
def register_package(package_name, package_def)
packages[package_name] = case package_def
when String
Kuby::Docker::Packages::ManagedPackage.new(
package_name, debian: package_def, alpine: package_def
)
when Hash
Kuby::Docker::Packages::ManagedPackage.new(
package_name, package_def
)
else
package_def.new(package_name)
end
end
|
.register_plugin(plugin_name, plugin_klass) ⇒ Object
43
44
45
|
# File 'lib/kuby.rb', line 43
def register_plugin(plugin_name, plugin_klass)
plugins[plugin_name] = plugin_klass
end
|
.register_provider(provider_name, provider_klass) ⇒ Object
35
36
37
|
# File 'lib/kuby.rb', line 35
def register_provider(provider_name, provider_klass)
providers[provider_name] = provider_klass
end
|