Skip to content

Commit 12eb664

Browse files
author
Miłosz Skaza
authored
do not expose helper methods as commands (#138)
* do not expose helper methods as commands * additional fix for plugin loading
1 parent 4e636f5 commit 12eb664

File tree

2 files changed

+19
-19
lines changed

2 files changed

+19
-19
lines changed

ctfcli/cli/challenges.py

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ def new(self, type: str = "blank") -> int:
6262
def edit(self, challenge: str, dockerfile: bool = False) -> int:
6363
log.debug(f"edit: {challenge} (dockerfile={dockerfile})")
6464

65-
challenge_instance = self.resolve_single_challenge(challenge)
65+
challenge_instance = self._resolve_single_challenge(challenge)
6666
if not challenge_instance:
6767
return 1
6868

@@ -94,7 +94,7 @@ def show(self, challenge: str, color=True) -> int:
9494
def view(self, challenge: str, color=True) -> int:
9595
log.debug(f"view: {challenge} (color={color})")
9696

97-
challenge_instance = self.resolve_single_challenge(challenge)
97+
challenge_instance = self._resolve_single_challenge(challenge)
9898
if not challenge_instance:
9999
return 1
100100

@@ -450,13 +450,13 @@ def install(
450450
log.debug(f"install: (challenge={challenge}, force={force}, hidden={hidden}, ignore={ignore})")
451451

452452
if challenge:
453-
challenge_instance = self.resolve_single_challenge(challenge)
453+
challenge_instance = self._resolve_single_challenge(challenge)
454454
if not challenge_instance:
455455
return 1
456456

457457
local_challenges = [challenge_instance]
458458
else:
459-
local_challenges = self.resolve_all_challenges()
459+
local_challenges = self._resolve_all_challenges()
460460

461461
if isinstance(ignore, str):
462462
ignore = (ignore,)
@@ -527,13 +527,13 @@ def sync(self, challenge: str = None, ignore: Union[str, Tuple[str]] = ()) -> in
527527
log.debug(f"sync: (challenge={challenge}, ignore={ignore})")
528528

529529
if challenge:
530-
challenge_instance = self.resolve_single_challenge(challenge)
530+
challenge_instance = self._resolve_single_challenge(challenge)
531531
if not challenge_instance:
532532
return 1
533533

534534
local_challenges = [challenge_instance]
535535
else:
536-
local_challenges = self.resolve_all_challenges()
536+
local_challenges = self._resolve_all_challenges()
537537

538538
if isinstance(ignore, str):
539539
ignore = (ignore,)
@@ -588,13 +588,13 @@ def deploy(
588588
log.debug(f"deploy: (challenge={challenge}, host={host}, skip_login={skip_login})")
589589

590590
if challenge:
591-
challenge_instance = self.resolve_single_challenge(challenge)
591+
challenge_instance = self._resolve_single_challenge(challenge)
592592
if not challenge_instance:
593593
return 1
594594

595595
challenges = [challenge_instance]
596596
else:
597-
challenges = self.resolve_all_challenges()
597+
challenges = self._resolve_all_challenges()
598598

599599
deployable_challenges, failed_deployments, failed_syncs = [], [], []
600600

@@ -727,7 +727,7 @@ def lint(
727727
) -> int:
728728
log.debug(f"lint: (challenge={challenge}, skip_hadolint={skip_hadolint}, flag_format='{flag_format}')")
729729

730-
challenge_instance = self.resolve_single_challenge(challenge)
730+
challenge_instance = self._resolve_single_challenge(challenge)
731731
if not challenge_instance:
732732
return 1
733733

@@ -745,7 +745,7 @@ def lint(
745745
def healthcheck(self, challenge: Optional[str] = None) -> int:
746746
log.debug(f"healthcheck: (challenge={challenge})")
747747

748-
challenge_instance = self.resolve_single_challenge(challenge)
748+
challenge_instance = self._resolve_single_challenge(challenge)
749749
if not challenge_instance:
750750
return 1
751751

@@ -817,13 +817,13 @@ def mirror(
817817
)
818818

819819
if challenge:
820-
challenge_instance = self.resolve_single_challenge(challenge)
820+
challenge_instance = self._resolve_single_challenge(challenge)
821821
if not challenge_instance:
822822
return 1
823823

824824
local_challenges = [challenge_instance]
825825
else:
826-
local_challenges = self.resolve_all_challenges()
826+
local_challenges = self._resolve_all_challenges()
827827

828828
if isinstance(ignore, str):
829829
ignore = (ignore,)
@@ -873,13 +873,13 @@ def verify(self, challenge: str = None, ignore: Tuple[str] = ()) -> int:
873873
log.debug(f"verify: (challenge={challenge}, ignore={ignore})")
874874

875875
if challenge:
876-
challenge_instance = self.resolve_single_challenge(challenge)
876+
challenge_instance = self._resolve_single_challenge(challenge)
877877
if not challenge_instance:
878878
return 1
879879

880880
local_challenges = [challenge_instance]
881881
else:
882-
local_challenges = self.resolve_all_challenges()
882+
local_challenges = self._resolve_all_challenges()
883883

884884
if isinstance(ignore, str):
885885
ignore = (ignore,)
@@ -938,13 +938,13 @@ def format(self, challenge: Optional[str] = None) -> int:
938938
log.debug(f"format: (challenge={challenge})")
939939

940940
if challenge:
941-
challenge_instance = self.resolve_single_challenge(challenge)
941+
challenge_instance = self._resolve_single_challenge(challenge)
942942
if not challenge_instance:
943943
return 1
944944

945945
challenges = [challenge_instance]
946946
else:
947-
challenges = self.resolve_all_challenges()
947+
challenges = self._resolve_all_challenges()
948948

949949
failed_formats = []
950950
for challenge_instance in challenges:
@@ -968,7 +968,7 @@ def format(self, challenge: Optional[str] = None) -> int:
968968
return 1
969969

970970
@staticmethod
971-
def resolve_single_challenge(challenge: Optional[str] = None) -> Optional[Challenge]:
971+
def _resolve_single_challenge(challenge: Optional[str] = None) -> Optional[Challenge]:
972972
# if a challenge is specified
973973
if challenge:
974974
# check if it's a path to challenge.yml, or the current directory
@@ -994,7 +994,7 @@ def resolve_single_challenge(challenge: Optional[str] = None) -> Optional[Challe
994994
return
995995

996996
@staticmethod
997-
def resolve_all_challenges() -> List[Challenge]:
997+
def _resolve_all_challenges() -> List[Challenge]:
998998
config = Config()
999999
challenge_keys = config.challenges.keys()
10001000

ctfcli/core/plugins.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ def load_plugins(commands: Dict):
1313
sys.path.insert(0, str(plugins_path.absolute()))
1414

1515
for plugin in sorted(plugins_path.iterdir()):
16-
if plugin.name.startswith("_"):
16+
if plugin.name.startswith("_") or plugin.name.startswith("."):
1717
continue
1818

1919
plugin_path = plugins_path / plugin / "__init__.py"

0 commit comments

Comments
 (0)