← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] ~alvarocs/launchpad-buildd:charms-platform-name into launchpad-buildd:master

 

Alvaro Crespo Serrano has proposed merging ~alvarocs/launchpad-buildd:charms-platform-name into launchpad-buildd:master.

Commit message:
Add 'recipe_platform_name' as argument to pass it to the builder

Requested reviews:
  Launchpad code reviewers (launchpad-reviewers)

For more details, see:
https://code.launchpad.net/~alvarocs/launchpad-buildd/+git/launchpad-buildd/+merge/483410
-- 
Your team Launchpad code reviewers is requested to review the proposed merge of ~alvarocs/launchpad-buildd:charms-platform-name into launchpad-buildd:master.
diff --git a/lpbuildd/charm.py b/lpbuildd/charm.py
index c3243bf..64f22b2 100644
--- a/lpbuildd/charm.py
+++ b/lpbuildd/charm.py
@@ -36,6 +36,7 @@ class CharmBuildManager(BuildManagerProxyMixin, DebianBuildManager):
         self.proxy_url = extra_args.get("proxy_url")
         self.revocation_endpoint = extra_args.get("revocation_endpoint")
         self.proxy_service = None
+        self.recipe_platform_name = extra_args.get("recipe_platform_name")
 
         super().initiate(files, chroot, extra_args)
 
@@ -55,6 +56,8 @@ class CharmBuildManager(BuildManagerProxyMixin, DebianBuildManager):
             args.extend(["--git-path", self.git_path])
         if self.build_path is not None:
             args.extend(["--build-path", self.build_path])
+        if self.recipe_platform_name:
+            args.extend(["--recipe-platform-name", self.recipe_platform_name])
         args.append(self.name)
         self.runTargetSubProcess("build-charm", *args)
 
diff --git a/lpbuildd/target/build_charm.py b/lpbuildd/target/build_charm.py
index 1bcbd1e..f3dfc7a 100644
--- a/lpbuildd/target/build_charm.py
+++ b/lpbuildd/target/build_charm.py
@@ -41,6 +41,11 @@ class BuildCharm(
             "--build-path", default=".", help="location of charm to build."
         )
         parser.add_argument("name", help="name of charm to build")
+        parser.add_argument(
+            "--recipe_platform_name",
+            type=str,
+            help="platform name used by the craft tool"
+        )
 
     def __init__(self, args, parser):
         super().__init__(args, parser)
@@ -105,6 +110,8 @@ class BuildCharm(
         )
         check_path_escape(self.buildd_path, build_context_path)
         env = self.build_proxy_environment(proxy_url=self.args.proxy_url)
+        if self.args.recipe_platform_name:
+            env["CRAFT_PLATFORM"] = self.args.recipe_platform_name
         args = ["charmcraft", "pack", "-v", "--destructive-mode"]
         self.run_build_command(args, env=env, cwd=build_context_path)
 

References