class Assemblyline::CLI
Attributes
local_mount[R]
Public Instance Methods
build(url_or_path)
click to toggle source
# File lib/assemblyline/cli.rb, line 11 def build(url_or_path) init_local_mount url_or_path exec "docker run --rm #{bind_mounts} #{env_flags} #{debug_flags} #{dev_mount} #{local_mount} #{assemblyline_builder} bin/build #{build_command(url_or_path)}" # rubocop:disable Metrics/LineLength end
update()
click to toggle source
# File lib/assemblyline/cli.rb, line 17 def update fail unless system "docker pull #{assemblyline_builder}" exec "gem install assemblyline-cli" end
version()
click to toggle source
# File lib/assemblyline/cli.rb, line 24 def version puts CLI_VERSION end
Private Instance Methods
assemblyline_builder()
click to toggle source
# File lib/assemblyline/cli.rb, line 80 def assemblyline_builder "quay.io/assemblyline/builder:latest" end
bind_mounts()
click to toggle source
# File lib/assemblyline/cli.rb, line 76 def bind_mounts "-v /tmp:/tmp -v /var/run/docker.sock:/var/run/docker.sock" end
branch_tip()
click to toggle source
# File lib/assemblyline/cli.rb, line 53 def branch_tip `git rev-parse #{ENV["branch"]}`.chomp end
build_command(url_or_path)
click to toggle source
# File lib/assemblyline/cli.rb, line 32 def build_command(url_or_path) if local_mount "local_build #{push}#{sha}" else "build #{push}#{url_or_path} #{options[:ref]}" end end
debug_flags()
click to toggle source
# File lib/assemblyline/cli.rb, line 66 def debug_flags return unless options[:debug] || $stdout.isatty "-ti" end
dev_mount()
click to toggle source
# File lib/assemblyline/cli.rb, line 71 def dev_mount return unless options[:dev] "-v #{File.expand_path(options[:dev], Dir.pwd)}:/usr/src" end
dir?(path)
click to toggle source
# File lib/assemblyline/cli.rb, line 62 def dir?(path) File.directory?(File.expand_path(path, Dir.pwd)) end
env_flags()
click to toggle source
# File lib/assemblyline/cli.rb, line 84 def env_flags Env.new.to_flags end
init_local_mount(path)
click to toggle source
# File lib/assemblyline/cli.rb, line 57 def init_local_mount(path) return unless dir?(path) @local_mount = "-v #{File.expand_path(path, Dir.pwd)}:/usr/assemblyline/local" end
push()
click to toggle source
# File lib/assemblyline/cli.rb, line 40 def push return unless options[:push] "--push " end
sha()
click to toggle source
# File lib/assemblyline/cli.rb, line 45 def sha branch_tip == "" ? tip : branch_tip end
tip()
click to toggle source
# File lib/assemblyline/cli.rb, line 49 def tip `git rev-parse HEAD`.chomp end