;; ;; adams - Remote system administration tools ;; ;; Copyright 2013,2014 Thomas de Grivel <thomas@lowh.net> ;; ;; Permission to use, copy, modify, and distribute this software for any ;; purpose with or without fee is hereby granted, provided that the above ;; copyright notice and this permission notice appear in all copies. ;; ;; THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES ;; WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF ;; MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ;; ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ;; ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF ;; OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ;; (in-package :cl-user) (defpackage :adams (:use :alexandria :cl :debug :iterate :re :str) (:shadow #:directory) (:export ;; Shell #:*default-shell-command* #:*shell-signal-errors* #:shell-error #:shell-error-command #:shell-error-status #:shell-error-out #:shell-error-err #:sh-quote #:sh-parse-integer #:ascii-set-graphics-mode #:shell #:shell-pid #:shell-in #:shell-out/line #:shell-err #:shell-err/line #:shell-status #:shell-close #:shell-closed-p #:shell-run-command #:with-shell #:shell-run #:make-shell ;; Probe #:probe #:probe-name #:probe-properties #:probe-generic-function ;; Resource metaclass #:compute-probes #:define-resource-class #:direct-probes #:probe-class #:probes-of #:resource-class ;; Resource #:add-resource #:get-resource #:make-resource #:make-*resources* #:probed-properties #:resource #:resource-type #:specified-properties #:specified-property ;; Specification #:specify #:parse-specification #:parse-next-specification ;; OS #:os #:os-bsd #:os-darwin #:os-freebsd #:os-linux #:os-machine #:os-name #:os-openbsd #:os-release #:os-unix #:os-version #:os-windows ;; Probing resources #:find-probe #:get-probed #:resource-probe-error #:resource-probe-not-found #:resource-probe-failed ;; Host #:*host* #:host #:host-connect #:host-disconnect #:host-shell #:host-run #:*localhost* #:run #:ssh-host #:with-connected-host #:with-host ;; Unix #:+timestamp-offset+ #:timestamp-to-universal-time #:universal-time-to-timestamp #:grep #:egrep #:stat #:group #:define-syntax #:parse-group<5> #:group<5> #:user #:parse-passwd<5> #:passwd<5> #:file #:parse-stat<1> #:stat<1>)) (defpackage :adams-user (:use :adams :cl :cl-debug)) (setf (symbol-function 'adams::directory) #'cl:directory)