majordomo.el 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. (defun deadgrep-kvm (str)
  2. (interactive "sString to search: ")
  3. (let ((default-directory (expand-file-name "~/src/gitlab.intr/vds/vds-xenial")))
  4. (deadgrep str)))
  5. ;;;
  6. ;;; Mail
  7. ;;;
  8. ;; TODO: Majordomo SMTP
  9. ;; (with-eval-after-load 'sendmail
  10. ;; (setq send-mail-function #'smtpmail-send-it)
  11. ;; (setq smtpmail-smtp-user "pyhalov@majordomo.ru")
  12. ;; (setq smtpmail-smtp-server "router.majordomo.ru"))
  13. ;;;
  14. ;;; Snippets
  15. ;;;
  16. (defun majordomo-php-insert ()
  17. (interactive)
  18. (insert
  19. (prin1-to-string
  20. '(mapcar (lambda (version)
  21. (expand-file-name (format "~/src/gitlab.intr/webservices/apache2-php%s" (number-to-string version))))
  22. '(52 53 54 55 56 70 71 72 73 74)))))
  23. ;;;
  24. ;;; Documentation
  25. ;;;
  26. (defun sup-capture ()
  27. (interactive)
  28. (find-file (expand-file-name "~/src/work/doc/todo.org"))
  29. (split-window-right)
  30. (find-file (expand-file-name "~/src/tech-info/tech.texi"))
  31. ;; (setq compilation-ask-about-save nil)
  32. (compile (mapconcat 'identity
  33. '("makeinfo" "--no-number-sections"
  34. "--css-ref=https://www.gnu.org/software/gnulib/manual.css"
  35. "--no-split" "--html" "tech.texi"
  36. "&&" "mv" "tech.html" "/var/www/techinfo.intr/index.html")
  37. " ")))
  38. ;; TODO: Fix vterm-toggle.el tramp-auto-auth-secrets.el helm-tramp.el
  39. ;; (with-eval-after-load 'emacs-startup-hook
  40. ;; (load (expand-file-name "~/archive/src/vterm-toggle/vterm-toggle.el") t)
  41. ;; (load (expand-file-name "~/.emacs.d/tramp-auto-auth-secrets.el") t)
  42. ;; (load (expand-file-name "~/src/emacs-helm-tramp/helm-tramp.el") t))
  43. ;;;
  44. ;;; SSH
  45. ;;;
  46. (defun wi-find-docker-gitlab-file-name ()
  47. (interactive)
  48. (let ((file-name (split-string (buffer-file-name) "/")))
  49. (find-file
  50. (mapconcat 'identity
  51. (if (string= (nth 1 file-name) "docker:gitlab:")
  52. `("/srv/src/gitlab-ce" ,@(nthcdr 7 file-name))
  53. `("/docker:gitlab:/opt/gitlab/embedded/service/gitlab-rails"
  54. ,@(nthcdr 4 file-name)))
  55. "/"))))
  56. ;;;
  57. ;;; wi-utils
  58. ;;;
  59. ;; Addional procedures which depends on wi-utils
  60. (defun wi-servers-list-xpanes-open-tail-taskexecutor ()
  61. "Tail taskexecutor logs."
  62. (interactive)
  63. (wi-servers-list-xpanes-terminal (mapcar #'car (bui-list-get-marked-args 'general))
  64. "ssh -t {} -- sudo tail -f /var/log/taskexecutor.log"))
  65. ;; TODO: Bind wi-servers-list-xpanes-open-tail-taskexecutor
  66. ;; (define-key map (kbd "T") 'wi-servers-list-xpanes-open-tail-taskexecutor)
  67. (defun wi-servers-list-open-terminal ()
  68. "Open `terminal-here' with selected servers."
  69. (interactive)
  70. (mapcar (lambda (entry)
  71. (let ((host (car entry)))
  72. (terminal-here (concat "/ssh:" host ":"))))
  73. (bui-list-get-marked-args 'general)))
  74. ;; TODO: Bind wi-servers-list-open-terminal
  75. ;; (define-key map (kbd "s") 'wi-servers-list-open-terminal)
  76. (when (file-exists-p "~/.emacs.d/modules/mjru-network.el")
  77. (load (expand-file-name "~/.emacs.d/modules/mjru-network.el")))
  78. (defun mjru-connect-br1-mr14.intr ()
  79. (interactive)
  80. (vterm)
  81. (vterm-send-string "connect br1-mr14.intr")
  82. (vterm-send-return))
  83. (defun mjru-find-file-kubernetes ()
  84. (mapc (lambda (host)
  85. (find-file (concat "/ssh:root@" host ":")))
  86. '("78.108.87.50" "178.250.246.69" "178.250.245.80" "178.250.247.88")))