about summary refs log tree commit diff
path: root/configs/shared/emacs/.emacs.d/elpa/docker-20180820.1130/docker-container.el
diff options
context:
space:
mode:
Diffstat (limited to 'configs/shared/emacs/.emacs.d/elpa/docker-20180820.1130/docker-container.el')
-rw-r--r--configs/shared/emacs/.emacs.d/elpa/docker-20180820.1130/docker-container.el498
1 files changed, 0 insertions, 498 deletions
diff --git a/configs/shared/emacs/.emacs.d/elpa/docker-20180820.1130/docker-container.el b/configs/shared/emacs/.emacs.d/elpa/docker-20180820.1130/docker-container.el
deleted file mode 100644
index 18a0960c6051..000000000000
--- a/configs/shared/emacs/.emacs.d/elpa/docker-20180820.1130/docker-container.el
+++ /dev/null
@@ -1,498 +0,0 @@
-;;; docker-container.el --- Emacs interface to docker-container  -*- lexical-binding: t -*-
-
-;; Author: Philippe Vaucher <philippe.vaucher@gmail.com>
-;;         Yuki Inoue <inouetakahiroki@gmail.com>
-
-;; This file is NOT part of GNU Emacs.
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 3, or (at your option)
-;; any later version.
-;;
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;; GNU General Public License for more details.
-;;
-;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
-
-;;; Commentary:
-
-;;; Code:
-
-(require 's)
-(require 'dash)
-(require 'json)
-(require 'tablist)
-(require 'magit-popup)
-
-(require 'docker-group)
-(require 'docker-process)
-(require 'docker-utils)
-
-(defgroup docker-container nil
-  "Docker container customization group."
-  :group 'docker)
-
-(defcustom docker-container-ls-arguments '("--all")
-  "Default arguments for `docker-container-ls-popup'."
-  :group 'docker-container
-  :type '(repeat (string :tag "Argument")))
-
-(defcustom docker-container-shell-file-name shell-file-name
-  "Shell to use when entering containers.
-For more information see the variable `shell-file-name'."
-  :group 'docker-container
-  :type 'string)
-
-(defcustom docker-container-default-sort-key '("Image" . nil)
-  "Sort key for docker containers.
-
-This should be a cons cell (NAME . FLIP) where
-NAME is a string matching one of the column names
-and FLIP is a boolean to specify the sort order."
-  :group 'docker-container
-  :type '(cons (choice (const "Id")
-                       (const "Image")
-                       (const "Command")
-                       (const "Created")
-                       (const "Status")
-                       (const "Ports")
-                       (const "Names"))
-               (choice (const :tag "Ascending" nil)
-                       (const :tag "Descending" t))))
-
-(defun docker-container-parse (line)
-  "Convert a LINE from \"docker ps\" to a `tabulated-list-entries' entry."
-  (let (data)
-    (condition-case nil
-        (setq data (json-read-from-string line))
-      (json-readtable-error
-       (error "Could not read following string as json:\n%s" line)))
-    (setf (aref data 3) (format-time-string "%F %T" (date-to-time (aref data 3))))
-    (list (aref data 6) data)))
-
-(defun docker-container-entries ()
-  "Return the docker containers data for `tabulated-list-entries'."
-  (let* ((fmt "[{{json .ID}},{{json .Image}},{{json .Command}},{{json .CreatedAt}},{{json .Status}},{{json .Ports}},{{json .Names}}]")
-         (data (docker-run "container ls" docker-container-ls-arguments (format "--format=\"%s\"" fmt)))
-         (lines (s-split "\n" data t)))
-    (-map #'docker-container-parse lines)))
-
-(defun docker-container-refresh ()
-  "Refresh the containers list."
-  (setq tabulated-list-entries (docker-container-entries)))
-
-(defun docker-container-read-name ()
-  "Read an container name."
-  (completing-read "Container: " (-map #'car (docker-container-entries))))
-
-;;;###autoload
-(defun docker-container-eshell (container)
-  "Open `eshell' in CONTAINER."
-  (interactive (list (docker-container-read-name)))
-  (let* ((container-address (format "docker:%s:/" container))
-         (file-prefix (if (file-remote-p default-directory)
-                          (with-parsed-tramp-file-name default-directory nil
-                            (format "/%s:%s|" method host))
-                        "/"))
-         (default-directory (format "%s%s" file-prefix container-address))
-         (eshell-buffer-name (generate-new-buffer-name (format "*eshell %s*" default-directory))))
-    (eshell)))
-
-;;;###autoload
-(defun docker-container-find-directory (container directory)
-  "Inside CONTAINER open DIRECTORY."
-  (interactive
-   (let* ((container-name (docker-container-read-name))
-          (tramp-filename (read-directory-name "Directory: " (format "/docker:%s:/" container-name))))
-     (with-parsed-tramp-file-name tramp-filename nil
-       (list host localname))))
-  (dired (format "/docker:%s:%s" container directory)))
-
-(defalias 'docker-container-dired 'docker-container-find-directory)
-
-;;;###autoload
-(defun docker-container-find-file (container file)
-  "Inside CONTAINER open FILE."
-  (interactive
-   (let* ((container-name (docker-container-read-name))
-          (tramp-filename (read-file-name "File: " (format "/docker:%s:/" container-name))))
-     (with-parsed-tramp-file-name tramp-filename nil
-       (list host localname))))
-  (find-file (format "/docker:%s:%s" container file)))
-
-;;;###autoload
-(defun docker-container-shell (container)
-  "Open `shell' in CONTAINER."
-  (interactive (list (docker-container-read-name)))
-  (let* ((shell-file-name docker-container-shell-file-name)
-         (container-address (format "docker:%s:/" container))
-         (file-prefix (if (file-remote-p default-directory)
-                          (with-parsed-tramp-file-name default-directory nil
-                            (format "/%s:%s|" method host))
-                        "/"))
-         (default-directory (format "%s%s" file-prefix container-address)))
-    (shell (generate-new-buffer (format "*shell %s*" default-directory)))))
-
-;;;###autoload
-(defun docker-diff (name)
-  "Diff the container named NAME."
-  (interactive (list (docker-container-read-name)))
-  (docker-utils-with-buffer (format "diff %s" name)
-   (insert (docker-run "diff" name))))
-
-;;;###autoload
-(defun docker-inspect (name)
-  "Inspect the container named NAME."
-  (interactive (list (docker-container-read-name)))
-  (docker-utils-with-buffer (format "inspect %s" name)
-    (insert (docker-run "inspect" name))
-    (json-mode)))
-
-;;;###autoload
-(defun docker-kill (name &optional signal)
-  "Kill the container named NAME using SIGNAL."
-  (interactive (list (docker-container-read-name)))
-  (docker-run "kill" (when signal (format "-s %s" signal)) name))
-
-;;;###autoload
-(defun docker-logs (name &optional follow)
-  "Show the logs from container NAME.
-
-If FOLLOW is set, run in `async-shell-command'."
-  (interactive (list (docker-container-read-name)))
-  (if follow
-      (async-shell-command
-       (format "%s logs -f %s" docker-command name)
-       (generate-new-buffer (format "* docker logs %s *" name)))
-    (docker-utils-with-buffer (format "logs %s" name)
-      (insert (docker-run "logs" name)))))
-
-;;;###autoload
-(defun docker-pause (name)
-  "Pause the container named NAME."
-  (interactive (list (docker-container-read-name)))
-  (docker-run "pause" name))
-
-;;;###autoload
-(defun docker-rename (container name)
-  "Rename CONTAINER using NAME."
-  (interactive (list (docker-container-read-name) (read-string "Name: ")))
-  (docker-run "rename" container name))
-
-;;;###autoload
-(defun docker-restart (name &optional timeout)
-  "Restart the container named NAME.
-
-TIMEOUT is the number of seconds to wait for the container to stop before killing it."
-  (interactive (list (docker-container-read-name) current-prefix-arg))
-  (docker-run "restart" (when timeout (format "-t %d" timeout)) name))
-
-;;;###autoload
-(defun docker-rm (name &optional force link volumes)
-  "Remove the container named NAME.
-
-With prefix argument, sets FORCE to true.
-
-Force the removal even if the container is running when FORCE is set.
-Remove the specified link and not the underlying container when LINK is set.
-Remove the volumes associated with the container when VOLUMES is set."
-  (interactive (list (docker-container-read-name) current-prefix-arg))
-  (docker-run "rm" (when force "-f") (when link "-l") (when volumes "-v") name))
-
-;;;###autoload
-(defun docker-start (name)
-  "Start the container named NAME."
-  (interactive (list (docker-container-read-name)))
-  (docker-run "start" name))
-
-;;;###autoload
-(defun docker-stop (name &optional timeout)
-  "Stop the container named NAME.
-
-TIMEOUT is the number of seconds to wait for the container to stop before killing it."
-  (interactive (list (docker-container-read-name) current-prefix-arg))
-  (docker-run "stop" (when timeout (format "-t %d" timeout)) name))
-
-;;;###autoload
-(defun docker-unpause (name)
-  "Unpause the container named NAME."
-  (interactive (list (docker-container-read-name)))
-  (docker-run "unpause" name))
-
-(defun docker-container-cp-from-selection (container-path host-path)
-  "Run \"docker cp\" from CONTAINER-PATH to HOST-PATH for selected container."
-  (interactive "sContainer path: \nFHost path: ")
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-run "cp" (concat it ":" container-path) host-path)))
-
-(defun docker-container-cp-to-selection (host-path container-path)
-  "Run \"docker cp\" from HOST-PATH to CONTAINER-PATH for selected containers."
-  (interactive "fHost path: \nsContainer path: ")
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-run "cp" host-path (concat it ":" container-path))))
-
-(defun docker-container-diff-selection ()
-  "Run `docker-diff' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-utils-with-buffer (format "diff %s" it)
-      (insert (docker-run "diff" (docker-container-diff-arguments) it)))))
-
-(defun docker-container-eshell-selection ()
-  "Run `docker-container-eshell' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-container-eshell it)))
-
-(defun docker-container-find-file-selection (path)
-  "Run `docker-container-find-file' on the containers selection."
-  (interactive "sPath: ")
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-container-find-file it path)))
-
-(defun docker-container-inspect-selection ()
-  "Run `docker-inspect' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-utils-with-buffer (format "inspect %s" it)
-      (insert (docker-run "inspect" (docker-container-inspect-arguments) it))
-      (json-mode))))
-
-(defun docker-container-kill-selection ()
-  "Run `docker-kill' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-run "kill" (docker-container-kill-arguments) it))
-  (tablist-revert))
-
-(defun docker-container-logs-selection ()
-  "Run \"docker logs\" on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (async-shell-command
-     (format "%s logs %s %s" docker-command (s-join " " (docker-container-logs-arguments)) it)
-     (generate-new-buffer (format "* docker logs %s *" it)))))
-
-(defun docker-container-pause-selection ()
-  "Run `docker-pause' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-run "pause" (docker-container-pause-arguments) it))
-  (tablist-revert))
-
-(defun docker-container-rename-selection ()
-  "Rename containers."
-  (interactive)
-  (docker-utils-select-if-empty)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-rename it (read-string (format "New name for %s: " it))))
-  (tablist-revert))
-
-(defun docker-container-restart-selection ()
-  "Run `docker-restart' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-run "restart" (docker-container-restart-arguments) it))
-  (tablist-revert))
-
-(defun docker-container-rm-selection ()
-  "Run `docker-rm' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-run "rm" (docker-container-rm-arguments) it))
-  (tablist-revert))
-
-(defun docker-container-shell-selection ()
-  "Run `docker-container-shell' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-container-shell it)))
-
-(defun docker-container-start-selection ()
-  "Run `docker-start' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-run "start" (docker-container-start-arguments) it))
-  (tablist-revert))
-
-(defun docker-container-stop-selection ()
-  "Run `docker-stop' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-run "stop" (docker-container-stop-arguments) it))
-  (tablist-revert))
-
-(defun docker-container-unpause-selection ()
-  "Run `docker-unpause' on the containers selection."
-  (interactive)
-  (--each (docker-utils-get-marked-items-ids)
-    (docker-run "unpause" (docker-container-unpause-arguments) it))
-  (tablist-revert))
-
-(magit-define-popup docker-container-cp-popup
-  "Popup for copying files from/to containers."
-  'docker-container
-  :man-page "docker-cp"
-  :actions  '((?f "Copy From" docker-container-cp-from-selection)
-              (?t "Copy To" docker-container-cp-to-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-diff-popup
-  "Popup for showing containers diffs."
-  'docker-container
-  :man-page "docker-diff"
-  :actions  '((?d "Diff" docker-container-diff-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-find-file-popup
-  "Popup for opening containers files."
-  'docker-container
-  :actions  '((?f "Open file" docker-container-find-file-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-inspect-popup
-  "Popup for inspecting containers."
-  'docker-container
-  :man-page "docker-inspect"
-  :actions  '((?I "Inspect" docker-container-inspect-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-kill-popup
-  "Popup for kill signaling containers"
-  'docker-container
-  :man-page "docker-kill"
-  :options  '((?s "Signal" "-s "))
-  :actions  '((?K "Kill" docker-container-kill-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-logs-popup
-  "Popup for showing containers logs."
-  'docker-container
-  :man-page "docker-logs"
-  :switches '((?f "Follow" "-f"))
-  :actions  '((?L "Logs" docker-container-logs-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-ls-popup
-  "Popup for listing containers."
-  'docker-container
-  :man-page "docker-container-ls"
-  :switches  '((?a "All" "--all")
-               (?e "Exited containers" "--filter status=exited")
-               (?n "Don't truncate" "--no-trunc"))
-  :options   '((?f "Filter" "--filter ")
-               (?n "Last" "--last "))
-  :actions   `((?l "List" ,(docker-utils-set-then-call 'docker-container-ls-arguments 'tablist-revert))))
-
-(magit-define-popup docker-container-pause-popup
-  "Popup for pauseing containers."
-  'docker-container
-  :man-page "docker-pause"
-  :actions  '((?P "Pause" docker-container-pause-selection)
-              (?U "Unpause" docker-container-unpause-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-restart-popup
-  "Popup for restarting containers."
-  'docker-container
-  :man-page "docker-restart"
-  :options '((?t "Timeout" "-t "))
-  :actions '((?R "Restart" docker-container-restart-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-rm-popup
-  "Popup for removing containers."
-  'docker-container
-  :man-page "docker-rm"
-  :switches '((?f "Force" "-f")
-              (?v "Volumes" "-v"))
-  :actions  '((?D "Remove" docker-container-rm-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-shell-popup
-  "Popup for doing M-x `shell'/`eshell' to containers."
-  'docker-container
-  :actions  '((?b "Shell" docker-container-shell-selection)
-              (?e "Eshell" docker-container-eshell-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-start-popup
-  "Popup for starting containers."
-  'docker-container
-  :man-page "docker-start"
-  :actions  '((?S "Start" docker-container-start-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-stop-popup
-  "Popup for stoping containers."
-  'docker-container
-  :man-page "docker-stop"
-  :options '((?t "Timeout" "-t "))
-  :actions '((?O "Stop" docker-container-stop-selection))
-  :setup-function #'docker-utils-setup-popup)
-
-(magit-define-popup docker-container-help-popup
-  "Help popup for docker containers."
-  'docker-container
-  :actions '("Docker containers help"
-             (?C "Copy"       docker-container-cp-popup)
-             (?D "Remove"     docker-container-rm-popup)
-             (?I "Inspect"    docker-container-inspect-popup)
-             (?K "Kill"       docker-container-kill-popup)
-             (?L "Logs"       docker-container-logs-popup)
-             (?O "Stop"       docker-container-stop-popup)
-             (?P "Pause"      docker-container-pause-popup)
-             (?R "Restart"    docker-container-restart-popup)
-             (?S "Start"      docker-container-start-popup)
-             (?b "Shell"      docker-container-shell-popup)
-             (?d "Diff"       docker-container-diff-popup)
-             (?f "Find file"  docker-container-find-file-popup)
-             (?l "List"       docker-container-ls-popup)
-             (?r "Rename"     docker-container-rename-selection)))
-
-(defvar docker-container-mode-map
-  (let ((map (make-sparse-keymap)))
-    (define-key map "?" 'docker-container-help-popup)
-    (define-key map "C" 'docker-container-cp-popup)
-    (define-key map "D" 'docker-container-rm-popup)
-    (define-key map "I" 'docker-container-inspect-popup)
-    (define-key map "K" 'docker-container-kill-popup)
-    (define-key map "L" 'docker-container-logs-popup)
-    (define-key map "O" 'docker-container-stop-popup)
-    (define-key map "P" 'docker-container-pause-popup)
-    (define-key map "R" 'docker-container-restart-popup)
-    (define-key map "S" 'docker-container-start-popup)
-    (define-key map "b" 'docker-container-shell-popup)
-    (define-key map "d" 'docker-container-diff-popup)
-    (define-key map "f" 'docker-container-find-file-popup)
-    (define-key map "l" 'docker-container-ls-popup)
-    (define-key map "r" 'docker-container-rename-selection)
-    map)
-  "Keymap for `docker-container-mode'.")
-
-;;;###autoload
-(defun docker-containers ()
-  "List docker containers."
-  (interactive)
-  (docker-utils-pop-to-buffer "*docker-containers*")
-  (docker-container-mode)
-  (tablist-revert))
-
-(define-derived-mode docker-container-mode tabulated-list-mode "Containers Menu"
-  "Major mode for handling a list of docker containers."
-  (setq tabulated-list-format [("Id" 16 t)("Image" 15 t)("Command" 30 t)("Created" 23 t)("Status" 20 t)("Ports" 10 t)("Names" 10 t)])
-  (setq tabulated-list-padding 2)
-  (setq tabulated-list-sort-key docker-container-default-sort-key)
-  (add-hook 'tabulated-list-revert-hook 'docker-container-refresh nil t)
-  (tabulated-list-init-header)
-  (tablist-minor-mode))
-
-(provide 'docker-container)
-
-;;; docker-container.el ends here