1# Copyright 2024 The Chromium Authors 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5from __future__ import annotations 6 7import abc 8from typing import TYPE_CHECKING 9 10if TYPE_CHECKING: 11 from crossbench.plt.base import CmdArg, ListCmdArgs 12 13 14class SshPlatformMixin(abc.ABC): 15 16 @property 17 def is_remote_ssh(self) -> bool: 18 return True 19 20 @abc.abstractmethod 21 def _build_ssh_cmd(self, *args: CmdArg, shell=False) -> ListCmdArgs: 22 pass 23