From 03fdb9a9acd9e6503906da7854565758c3d38d2e Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Fri, 27 Jan 2023 15:41:28 +0100 Subject: [PATCH] Chain builder setup for better resiliency Context may already exist while buildx does not --- lib/mrsk/commands/base.rb | 4 ++++ lib/mrsk/commands/builder/native/remote.rb | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/mrsk/commands/base.rb b/lib/mrsk/commands/base.rb index e7305701..dc3924e0 100644 --- a/lib/mrsk/commands/base.rb +++ b/lib/mrsk/commands/base.rb @@ -16,6 +16,10 @@ module Mrsk::Commands .tap { |commands| commands.pop } # Remove trailing combiner end + def chain(*commands) + combine *commands, by: ";" + end + def pipe(*commands) combine *commands, by: "|" end diff --git a/lib/mrsk/commands/builder/native/remote.rb b/lib/mrsk/commands/builder/native/remote.rb index 6d2aeeea..d3089fdb 100644 --- a/lib/mrsk/commands/builder/native/remote.rb +++ b/lib/mrsk/commands/builder/native/remote.rb @@ -2,13 +2,13 @@ require "mrsk/commands/builder/native" class Mrsk::Commands::Builder::Native::Remote < Mrsk::Commands::Builder::Native def create - combine \ + chain \ create_context, create_buildx end def remove - combine \ + chain \ remove_context, remove_buildx end @@ -25,7 +25,7 @@ class Mrsk::Commands::Builder::Native::Remote < Mrsk::Commands::Builder::Native end def info - combine \ + chain \ docker(:context, :ls), docker(:buildx, :ls) end