Sha256: 6ac0a6e2b37598b00cf504ef90eabba52f14277c1667a805203bb8921153e574

Contents?: true

Size: 974 Bytes

Versions: 2

Compression:

Stored size: 974 Bytes

Contents

# frozen_string_literal: true

module Neptuno
  module Docker
    # Restart docker containers for Neptuno project
    class Restart < Neptuno::CLI::Base
      desc "Docker: Rebuild and restart docker containers for current project"

      option :all, type: :boolean, default: false, desc: "Run on all services"
      argument :services, type: :array, required: false, desc: "Optional list of services"

      def call(services: [], **options)
        command_services_to("restart", all: options.fetch(:all), services_as_args: services) do |services|
          make_service_files(services)
          system("cd #{neptuno_path} && docker compose stop -t 0 #{services.join(" ")}")
          system("cd #{neptuno_path} && docker compose rm -f #{services.join(" ")}")
          system("cd #{neptuno_path} && docker compose build #{services.join(" ")}")
          system("cd #{neptuno_path} && docker compose up -d #{services.join(" ")}")
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
neptuno-1.2.1 lib/neptuno/docker/restart.rb
neptuno-1.2.0 lib/neptuno/docker/restart.rb