Module: Portless

Defined in:
lib/rb-portless.rb,
lib/portless/cli.rb,
lib/portless/mdns.rb,
lib/portless/certs.rb,
lib/portless/hosts.rb,
lib/portless/multi.rb,
lib/portless/proxy.rb,
lib/portless/rails.rb,
lib/portless/state.rb,
lib/portless/trust.rb,
lib/portless/banner.rb,
lib/portless/colors.rb,
lib/portless/config.rb,
lib/portless/daemon.rb,
lib/portless/health.rb,
lib/portless/lan_ip.rb,
lib/portless/runner.rb,
lib/portless/service.rb,
lib/portless/version.rb,
lib/portless/worktree.rb,
lib/portless/constants.rb,
lib/portless/free_port.rb,
lib/portless/privilege.rb,
lib/portless/frameworks.rb,
lib/portless/port_owner.rb,
lib/portless/rails_hosts.rb,
lib/portless/route_store.rb,
lib/portless/run_support.rb,
lib/portless/share/ngrok.rb,
lib/portless/share/tailscale.rb

Defined Under Namespace

Modules: Banner, Colors, Constants, Daemon, Frameworks, FreePort, Health, Hosts, LanIp, Mdns, PortOwner, Privilege, RailsHosts, RunSupport, Service, Share, State, Trust, Worktree Classes: CLI, Certs, Config, Error, Multi, NonInteractiveError, Proxy, Railtie, RouteConflictError, RouteStore, Runner

Constant Summary collapse

VERSION =
"0.4.0.dev.20260630.0e2b377"

Class Method Summary collapse

Class Method Details

.skip_proxy?Boolean

PORTLESS=0|false|skip runs the command straight through, no proxy/route — the bypass portless documents for CI or one-off plain runs.

Returns:

  • (Boolean)


45
# File 'lib/rb-portless.rb', line 45

def self.skip_proxy? = %w[0 false skip].include?(ENV["PORTLESS"].to_s.downcase)

.which(bin) ⇒ Object

Is an executable on PATH? (For optional external tools: dns-sd, ngrok, …)



48
49
50
# File 'lib/rb-portless.rb', line 48

def self.which(bin)
  ENV["PATH"].to_s.split(File::PATH_SEPARATOR).any? { |dir| File.executable?(File.join(dir, bin)) }
end