Skip to content

Commit d480b8b

Browse files
committed
Bulk generator: Specify 'language' in the config file.
1 parent 626d68b commit d480b8b

File tree

3 files changed

+10
-7
lines changed

3 files changed

+10
-7
lines changed

cpp/misc/bulk_generation_targets.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"strategy": "dca",
3+
"language": "cpp",
34
"with_summaries": true,
45
"targets": [
56
{ "name": "openssl" },

misc/scripts/models-as-data/bulk_generate_mad.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ def build_database(
185185
return database_dir
186186

187187

188-
def generate_models(language: str, config, project: Project, database_dir: str) -> None:
188+
def generate_models(config, project: Project, database_dir: str) -> None:
189189
"""
190190
Generate models for a project.
191191
@@ -195,9 +195,10 @@ def generate_models(language: str, config, project: Project, database_dir: str)
195195
database_dir: Path to the CodeQL database.
196196
"""
197197
name = project["name"]
198+
language = config["language"]
198199

199200
generator = mad.Generator(language)
200-
# Note: The argument parser converts with-sinks to with_sinks, etc.
201+
# Note: The argument parser converts with-sinks to with_sinks, etc.
201202
generator.generateSinks = config.get("with_sinks", False)
202203
generator.generateSources = config.get("with_sources", False)
203204
generator.generateSummaries = config.get("with_summaries", False)
@@ -390,7 +391,10 @@ def main(config, args) -> None:
390391
"""
391392

392393
projects = config["targets"]
393-
language = args.lang
394+
if not "language" in config:
395+
print("ERROR: 'language' key is missing in the configuration file.")
396+
sys.exit(1)
397+
language = config["language"]
394398

395399
# Create build directory if it doesn't exist
396400
if not os.path.exists(build_dir):
@@ -452,7 +456,7 @@ def main(config, args) -> None:
452456

453457
for project, database_dir in database_results:
454458
if database_dir is not None:
455-
generate_models(language, config, project, database_dir)
459+
generate_models(config, project, database_dir)
456460

457461

458462
if __name__ == "__main__":
@@ -472,9 +476,6 @@ def main(config, args) -> None:
472476
help="PAT token to grab DCA databases (the same as the one you use for DCA)",
473477
required=False,
474478
)
475-
parser.add_argument(
476-
"--lang", type=str, help="The language to generate models for", required=True
477-
)
478479
args = parser.parse_args()
479480

480481
# Load config file

rust/misc/bulk_generation_targets.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"strategy": "repo",
3+
"language": "rust",
34
"with-sources": true,
45
"with-sinks": true,
56
"with-summaries": true,

0 commit comments

Comments
 (0)