Skip to content

Commit 8e894c3

Browse files
committed
WIP
1 parent 8ce6752 commit 8e894c3

File tree

6 files changed

+137
-1
lines changed

6 files changed

+137
-1
lines changed

.cron.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,10 @@ jobs:
2323
target-tasks-method: firebase_performance_test
2424
treeherder-symbol: firebase-performance
2525
when:
26-
- {hour: 22, minute: 0}
26+
- {hour: 22, minute: 0}
27+
- name: beta-releases
28+
job:
29+
type: decision-task
30+
target-tasks-method: beta_releases
31+
treeherder-symbol: beta_releases
32+
when: [] # TODO: Manual only for now

taskcluster/ffios_taskgraph/target_tasks.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,3 +82,11 @@ def filter(task, parameters):
8282
)
8383

8484
return [l for l, t in full_task_graph.tasks.items() if filter(t, parameters)]
85+
86+
87+
@register_target_task("beta_releases")
88+
def target_task_beta_releases(full_task_graph, parameters, graph_config):
89+
def filter(task, parameters):
90+
return task.kind == "beta-releases"
91+
92+
return [l for l, t in full_task_graph.tasks.items() if filter(t, parameters)]
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# This Source Code Form is subject to the terms of the Mozilla Public
2+
# License, v. 2.0. If a copy of the MPL was not distributed with this
3+
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
4+
5+
from taskgraph.transforms.base import TransformSequence
6+
from taskgraph.util.schema import resolve_keyed_by
7+
8+
transforms = TransformSequence()
9+
10+
@transforms.add
11+
def resolve_keys(config, tasks):
12+
for task in tasks:
13+
for key in ("scopes",):
14+
resolve_keyed_by(
15+
task,
16+
key,
17+
item_name=task["name"],
18+
**{
19+
"level": config.params["level"],
20+
}
21+
)
22+
23+
yield task
24+

taskcluster/ffios_taskgraph/worker_types.py

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,3 +86,24 @@ def build_github_release_payload(config, task, task_def):
8686
]
8787
)
8888

89+
90+
@payload_builder(
91+
"scriptworker-shipit-release",
92+
schema={
93+
Required("branch"): str,
94+
Required("phase"): str,
95+
Required("product"): str,
96+
Required("revision"): str,
97+
Required("version"): str,
98+
}
99+
)
100+
def build_shipit_release_payload(config, task, task_def):
101+
task_def["payload"] = {
102+
"product": task["worker"]["product"],
103+
"branch": task["worker"]["branch"],
104+
"phase": task["worker"]["phase"],
105+
"version": task["worker"]["version"],
106+
"cron_revision": task["worker"]["revision"],
107+
"repository_url": config.params["head_repository"],
108+
}
109+
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# This Source Code Form is subject to the terms of the Mozilla Public
2+
# License, v. 2.0. If a copy of the MPL was not distributed with this
3+
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
4+
---
5+
loader: taskgraph.loader.transform:loader
6+
7+
transforms:
8+
- ffios_taskgraph.transforms.beta_releases
9+
- taskgraph.transforms.task
10+
11+
tasks:
12+
firefox:
13+
description: Create a beta firefox release in ship-it
14+
worker-type: ship-it
15+
run-on-tasks-for: []
16+
scopes:
17+
by-level:
18+
'3':
19+
- project:mobile:releng:ship-it:action:create-new-release
20+
- project:mobile:releng:ship-it:server:production
21+
'1':
22+
- project:mobile:releng:ship-it:action:create-new-release
23+
- project:mobile:releng:ship-it:server:staging
24+
treeherder:
25+
symbol: Rel
26+
tier: 1
27+
kind: build
28+
platform: ios/opt
29+
worker:
30+
implementation: scriptworker-shipit-release
31+
product: firefox-ios
32+
phase: ship
33+
# TODO: Fill those up
34+
branch: release/test
35+
revision: de85fa99855f05c7ff9bf59c116cc650506bc0ed
36+
version: "141.1"
37+
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
base_ref: origin/main
2+
base_repository: https://github.com/mozilla-mobile/staging-firefox-ios
3+
base_rev: 6a5ff6fb20e56f7963c81509a8933d7019028e16
4+
build_date: 1747826577
5+
build_number: 1
6+
commit_message: 'WIP
7+
8+
9+
'
10+
do_not_optimize: []
11+
enable_always_target: true
12+
existing_tasks: {}
13+
files_changed:
14+
- .cron.yml
15+
- taskcluster/config.yml
16+
- taskcluster/ffios_taskgraph/target_tasks.py
17+
- taskcluster/ffios_taskgraph/transforms/beta_releases.py
18+
- taskcluster/ffios_taskgraph/worker_types.py
19+
- taskcluster/kinds/beta-releases/kind.yml
20+
filters:
21+
- target_tasks_method
22+
head_ref: main
23+
head_repository: https://github.com/mozilla-mobile/staging-firefox-ios
24+
head_rev: 3943c2420bd7eb7357e067c9f469346264d6bd5e
25+
head_tag: ''
26+
level: '1'
27+
moz_build_date: '20250521112257'
28+
next_version: null
29+
optimize_strategies: null
30+
optimize_target_tasks: true
31+
32+
project: staging-firefox-ios
33+
pull_request_number: null
34+
pushdate: 0
35+
pushlog_id: '0'
36+
repository_type: git
37+
target_tasks_method: beta_releases
38+
tasks_for: cron
39+
version: '140.0'
40+

0 commit comments

Comments
 (0)