]> git.eshelyaron.com Git - kubed.git/commit
; Autoload 'kubed-tramp'
authorEshel Yaron <me@eshelyaron.com>
Sat, 19 Oct 2024 10:22:43 +0000 (12:22 +0200)
committerEshel Yaron <me@eshelyaron.com>
Sat, 19 Oct 2024 10:22:43 +0000 (12:22 +0200)
commitea3bd2402a4933b179766a1fceedb075b6c059b0
tree0ae6a56ba35df4ee1f57c2d32c392f3e4558d2a5
parent883e78b4f5900d5ddb8d85ed10da54c0a9ca95b8
; Autoload 'kubed-tramp'

Ensure that 'kubed-tramp' is loaded by the time it is
needed, to avoid "Method 'kubedv1' is not known" errors.
Ideally, we'd like to load 'kubed-tramp' on the first
occasion of handling a '/kubedv1:...' remote file name.
However, Tramp does not facilitate loading extensions just
in time.  The best we can do is to arrange for 'kubed-tramp'
to be loaded right after Tramp.  This is too early, because
Tramp is often used without 'kubed-tramp', so we move some
definitions around so that it no longer pulls in 'kubed'.

See also preceding tramp-devel discussion here:
https://lists.gnu.org/archive/html/tramp-devel/2024-10/msg00005.html

* kubed-common.el: New file.
(kubed-tramp-method, kubed-kubectl-program): Move here from
'kubed' and 'kubed-tramp', respectively.
* kubed-tramp.el: Require 'kubed-common' instead of 'kubed'.
(kubed-tramp-method): Move to 'kubed-common'.
(kubed-tramp-remote-file-name): Remove in favor of new
'kubed-remote-file-name' in 'kubed'.
(kubed-tramp-enable): New function, arrange for it to be
called after 'tramp' is loaded.
* kubed.el: Require 'kubed-common'.
(kubed-kubectl-program): Move to 'kubed-common'.
(kubed-remote-file-name): New function, replaces
'kubed-tramp-remote-file-name'.
(pod): Use it.
kubed-common.el [new file with mode: 0644]
kubed-tramp.el
kubed.el