1
0
mirror of https://github.com/facebook/proxygen.git synced 2025-08-07 07:02:53 +03:00

Add manifest for Meta Python 3.12

Summary:
This will be used to support the OSS build of CinderX with getdeps.py in upcoming diffs.

To make this work I had to teach getdeps.py how to pass `--external-branch` to `codesync`.

Reviewed By: alexmalyshev

Differential Revision: D79286425

fbshipit-source-id: f4b1066f8736fdb407f5bd75d3e2cc47b9e7d592
This commit is contained in:
Jacob Bower
2025-08-01 01:53:45 -07:00
committed by Facebook GitHub Bot
parent f74d9148f6
commit 8c1e7cfbc2
3 changed files with 44 additions and 18 deletions

View File

@@ -646,9 +646,10 @@ class ShipitTransformerFetcher(Fetcher):
fbcode_path = [] fbcode_path = []
return www_path + fbcode_path return www_path + fbcode_path
def __init__(self, build_options, project_name) -> None: def __init__(self, build_options, project_name, external_branch) -> None:
self.build_options = build_options self.build_options = build_options
self.project_name = project_name self.project_name = project_name
self.external_branch = external_branch
self.repo_dir = os.path.join(build_options.scratch_dir, "shipit", project_name) self.repo_dir = os.path.join(build_options.scratch_dir, "shipit", project_name)
self.shipit = None self.shipit = None
for path in ShipitTransformerFetcher._shipit_paths(build_options): for path in ShipitTransformerFetcher._shipit_paths(build_options):
@@ -679,24 +680,27 @@ class ShipitTransformerFetcher(Fetcher):
if os.path.exists(tmp_path): if os.path.exists(tmp_path):
shutil.rmtree(tmp_path) shutil.rmtree(tmp_path)
os.makedirs(os.path.dirname(tmp_path), exist_ok=True) os.makedirs(os.path.dirname(tmp_path), exist_ok=True)
cmd = [
self.shipit,
"shipit",
"--project=" + self.project_name,
"--create-new-repo",
"--source-repo-dir=" + self.build_options.fbsource_dir,
"--source-branch=.",
"--skip-source-init",
"--skip-source-pull",
"--skip-source-clean",
"--skip-push",
"--destination-use-anonymous-https",
"--create-new-repo-output-path=" + tmp_path,
]
if self.external_branch:
cmd += [
f"--external-branch={self.external_branch}",
]
# Run shipit # Run shipit
run_cmd( run_cmd(cmd)
[
self.shipit,
"shipit",
"--project=" + self.project_name,
"--create-new-repo",
"--source-repo-dir=" + self.build_options.fbsource_dir,
"--source-branch=.",
"--skip-source-init",
"--skip-source-pull",
"--skip-source-clean",
"--skip-push",
"--destination-use-anonymous-https",
"--create-new-repo-output-path=" + tmp_path,
]
)
# Remove the .git directory from the repository it generated. # Remove the .git directory from the repository it generated.
# There is no need to commit this. # There is no need to commit this.

View File

@@ -49,6 +49,7 @@ SCHEMA = {
"shipit_project": OPTIONAL, "shipit_project": OPTIONAL,
"shipit_fbcode_builder": OPTIONAL, "shipit_fbcode_builder": OPTIONAL,
"use_shipit": OPTIONAL, "use_shipit": OPTIONAL,
"shipit_external_branch": OPTIONAL,
}, },
}, },
"dependencies": {"optional_section": True, "allow_values": False}, "dependencies": {"optional_section": True, "allow_values": False},
@@ -428,7 +429,11 @@ class ManifestParser(object):
and real_shipit_available and real_shipit_available
): ):
# We can use the code from fbsource # We can use the code from fbsource
return ShipitTransformerFetcher(build_options, self.shipit_project) return ShipitTransformerFetcher(
build_options,
self.shipit_project,
self.get("manifest", "shipit_external_branch"),
)
# If both of these are None, the package can only be coming from # If both of these are None, the package can only be coming from
# preinstalled toolchain or system packages # preinstalled toolchain or system packages

View File

@@ -0,0 +1,17 @@
# This is primarily to support CinderX, so it's not heavily configured.
[manifest]
name = meta-python-3.12
fbsource_path = third-party/python/3.12
shipit_project = facebookincubator/cinder
shipit_fbcode_builder = false
shipit_external_branch = meta/3.12
[git]
repo_url = https://github.com/facebookincubator/cinder.git#meta/3.12
[build]
builder = autoconf
[shipit.pathmap]
third-party/python/3.12 = .