Sha256: c48a522bd63c08f7c649fb74fb00555250fd63e1dd4a02af7104dd179105f9d5
Contents?: true
Size: 848 Bytes
Versions: 7
Compression:
Stored size: 848 Bytes
Contents
# frozen_string_literal: true require "sod" module Milestoner module CLI module Actions module Cache # Handles creating or updating a user within the cache. class Create < Sod::Action include Import[:logger, client: :cache] description "Create user." ancillary %(Example: "1,zoe,Zoƫ Washburne".) on %w[-c --create], argument: "external_id,handle,name" def call values process(values).bind { |user| log_info "Created: #{user.name.inspect}" } end private def process values external_id, handle, name = values.split "," client.commit(:users) { upsert({external_id:, handle:, name:}) } end def log_info(message) = logger.info { message } end end end end end
Version data entries
7 entries across 7 versions & 1 rubygems