Update linux beta packaging job to use cosign to upload artifacts to the dev artifact registry

Bug: b/230772081

Change-Id: Ib7804750e8e87b7625722faa23378511d3ce250f
Reviewed-on: https://flutter-review.googlesource.com/c/infra/+/30561
Reviewed-by: Christopher Fujino <fujino@google.com>
Reviewed-by: Godofredo Contreras <godofredoc@google.com>
Commit-Queue: Drew Roen <drewroen@google.com>
diff --git a/config/generated/flutter/luci/cr-buildbucket.cfg b/config/generated/flutter/luci/cr-buildbucket.cfg
index 7ebd34a..9fafabb 100644
--- a/config/generated/flutter/luci/cr-buildbucket.cfg
+++ b/config/generated/flutter/luci/cr-buildbucket.cfg
@@ -747,11 +747,17 @@
         '    "server": "https://chromium-swarm.appspot.com"'
         '  },'
         '  "clobber": false,'
+        '  "dependencies": ['
+        '    {'
+        '      "dependency": "cosign"'
+        '    }'
+        '  ],'
         '  "gold_tryjob": false,'
         '  "goma_jobs": "200",'
         '  "mastername": "client.flutter",'
         '  "recipe": "packaging/packaging",'
-        '  "upload_packages": true'
+        '  "upload_packages": true,'
+        '  "upload_with_cosign": true'
         '}'
       priority: 25
       execution_timeout_secs: 3600
diff --git a/config/packaging_config.star b/config/packaging_config.star
index 4adeaff..1cd1da6 100644
--- a/config/packaging_config.star
+++ b/config/packaging_config.star
@@ -160,15 +160,30 @@
     # never use.
     if branch in ("beta", "stable"):
         # Defines framework prod builders
-        common.linux_prod_builder(
-            name = builder_name("Linux Flutter %s Packaging|%s", branch),
-            recipe = common.full_recipe_name("packaging/packaging", recipes_ref),
-            console_view_name = console_view_name,
-            triggered_by = [trigger_name],
-            triggering_policy = triggering_policy,
-            priority = 25,
-            **platform_args["linux"]
-        )
+        if branch == "stable":  # TODO(drewroen): Remove the branch check for linux flutter packaging when cosign is determined to work correctly
+            common.linux_prod_builder(
+                name = builder_name("Linux Flutter %s Packaging|%s", branch),
+                recipe = common.full_recipe_name("packaging/packaging", recipes_ref),
+                console_view_name = console_view_name,
+                triggered_by = [trigger_name],
+                triggering_policy = triggering_policy,
+                priority = 25,
+                **platform_args["linux"]
+            )
+        else:
+            common.linux_prod_builder(
+                name = builder_name("Linux Flutter %s Packaging|%s", branch),
+                recipe = common.full_recipe_name("packaging/packaging", recipes_ref),
+                console_view_name = console_view_name,
+                triggered_by = [trigger_name],
+                triggering_policy = triggering_policy,
+                properties = {
+                    "dependencies": [{"dependency": "cosign"}],
+                    "upload_with_cosign": True,
+                },
+                priority = 25,
+                **platform_args["linux"]
+            )
         common.mac_prod_builder(
             name = builder_name("Mac Flutter %s Packaging|%s", branch),
             recipe = common.full_recipe_name("packaging/packaging", recipes_ref),