Class: Zephira::Sandbox
- Inherits:
-
Object
- Object
- Zephira::Sandbox
- Defined in:
- lib/zephira/sandbox.rb
Constant Summary collapse
- GHCR_IMAGE =
"ghcr.io/aarongough/zephira"- DERIVED_IMAGE_PREFIX =
"zephira-sandbox"- FORWARDED_ENV_PATTERNS =
[/\AZEPHIRA_/].freeze
- FORWARDED_ENV_EXCLUDES =
%w[ZEPHIRA_IN_SANDBOX ZEPHIRA_SANDBOX].freeze
- OUTER_TL =
"╔"- OUTER_TR =
"╗"- OUTER_BL =
"╚"- OUTER_BR =
"╝"- OUTER_H =
"═"- OUTER_V =
"║"- INNER_TL =
"┌"- INNER_TR =
"┐"- INNER_BL =
"└"- INNER_BR =
"┘"- INNER_H =
"─"- INNER_V =
"│"- INNER_PADDING =
3
Class Method Summary collapse
Class Method Details
.exec_if_needed!(argv) ⇒ Object
30 31 32 33 34 35 36 37 38 39 |
# File 'lib/zephira/sandbox.rb', line 30 def exec_if_needed!(argv) return if ENV["ZEPHIRA_IN_SANDBOX"] == "1" return if ENV["ZEPHIRA_SANDBOX"] == "false" abort_with_sandbox_error unless docker_available? target = resolve_image $stderr.puts "[Zephira] Launching in Docker sandbox (#{target})..." Kernel.exec(*build_docker_command(argv, target)) end |