Skip to content

Commit 41e36be

Browse files
author
Michael Maeng
committed
no docker switch
1 parent 9671098 commit 41e36be

File tree

4 files changed

+33
-7
lines changed

4 files changed

+33
-7
lines changed

python/rpdk/typescript/codegen.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -72,12 +72,17 @@ def _init_from_project(self, project):
7272

7373
def _init_settings(self, project):
7474
LOG.debug("Writing settings")
75-
self._use_docker = self._use_docker or input_with_validation(
76-
"Use docker for platform-independent packaging (Y/n)?\n",
77-
validate_no,
78-
"This is highly recommended unless you are experienced \n"
79-
"with cross-platform Typescript packaging.",
80-
)
75+
if project.settings.get("use_docker") is True:
76+
self._use_docker = True
77+
elif project.settings.get("no_docker") is True:
78+
self._use_docker = False
79+
else:
80+
self._use_docker = input_with_validation(
81+
"Use docker for platform-independent packaging (Y/n)?\n",
82+
validate_no,
83+
"This is highly recommended unless you are experienced \n"
84+
"with cross-platform Typescript packaging.",
85+
)
8186
# switched to 'use_docker' from 'useDocker' to be in line with python version
8287
project.settings["use_docker"] = self._use_docker
8388
project.settings["protocolVersion"] = self._protocol_version

python/rpdk/typescript/parser.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,11 @@ def setup_subparser(subparsers, parents):
1515
with cross-platform TypeScript packaging.""",
1616
)
1717

18+
parser.add_argument(
19+
"--no-docker",
20+
action="store_true",
21+
help="""Generally not recommended unless you are experienced
22+
with cross-platform Typescript packaging.""",
23+
)
24+
1825
return parser

tests/plugin/codegen_test.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@ def project(tmp_path: str):
4949
lib_abspath = os.path.abspath(os.path.join(current_path, "..", "..", ".."))
5050
TypescriptLanguagePlugin.SUPPORT_LIB_URI = f"file:{lib_abspath}"
5151
project.init(TYPE_NAME, TypescriptLanguagePlugin.NAME)
52+
project.settings["use_docker"] = False
53+
project.settings["no_docker"] = False
5254
return project
5355

5456

@@ -94,7 +96,11 @@ def test__remove_build_artifacts_file_not_found(tmp_path: str):
9496

9597
def test_initialize(project: Project):
9698
lib_path = project._plugin._lib_path
97-
assert project.settings == {"use_docker": False, "protocolVersion": "2.0.0"}
99+
assert project.settings == {
100+
"protocolVersion": "2.0.0",
101+
"no_docker": False,
102+
"use_docker": False,
103+
}
98104

99105
files = get_files_in_project(project)
100106
assert set(files) == {

tests/plugin/parser_test.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,19 @@ def test_setup_subparser():
1212
args = sub_parser.parse_args([])
1313
assert args.language == "typescript"
1414
assert args.use_docker is False
15+
assert args.no_docker is False
1516

1617
short_args = sub_parser.parse_args(["-d"])
1718
assert short_args.language == "typescript"
1819
assert short_args.use_docker is True
20+
assert short_args.no_docker is False
1921

2022
long_args = sub_parser.parse_args(["--use-docker"])
2123
assert long_args.language == "typescript"
2224
assert long_args.use_docker is True
25+
assert long_args.no_docker is False
26+
27+
no_docker = sub_parser.parse_args(["--no-docker"])
28+
assert no_docker.language == "typescript"
29+
assert no_docker.use_docker is False
30+
assert no_docker.no_docker is True

0 commit comments

Comments
 (0)