Closed
Bug 1324052
Opened 8 years ago
Closed 8 years ago
add macosx64 nightly builds to the taskgraph
Categories
(Firefox Build System :: Task Configuration, task)
Firefox Build System
Task Configuration
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: kmoir, Assigned: kmoir)
References
Details
Attachments
(6 files, 34 obsolete files)
1.99 KB,
patch
|
Details | Diff | Splinter Review | |
21.63 KB,
patch
|
mozilla
:
feedback+
|
Details | Diff | Splinter Review |
4.51 KB,
application/json
|
Details | |
19.02 KB,
patch
|
Details | Diff | Splinter Review | |
5.48 KB,
patch
|
Details | Diff | Splinter Review | |
4.05 KB,
application/json
|
Details |
No description provided.
Assignee | ||
Comment 1•8 years ago
|
||
Assignee | ||
Updated•8 years ago
|
Assignee: nobody → kmoir
Assignee | ||
Comment 2•8 years ago
|
||
Attachment #8819363 -
Attachment is obsolete: true
Assignee | ||
Comment 3•8 years ago
|
||
Attachment #8819393 -
Attachment is obsolete: true
Assignee | ||
Comment 4•8 years ago
|
||
Comment on attachment 8819399 [details] [diff] [review]
bug1267425-3.patch
I frustrated with the mach repackage bug so I decided to work on another bug instead. I realize that all the dependencies for this graph are not implemented but thought it would be useful to implement this in the taskgraph on date, it won't be invoked until the hook is added anyways.
Attachment #8819399 -
Flags: feedback?(bugspam.Callek)
Comment 5•8 years ago
|
||
Comment on attachment 8819399 [details] [diff] [review]
bug1267425-3.patch
Review of attachment 8819399 [details] [diff] [review]:
-----------------------------------------------------------------
I'm working on the tc-l10n bits now locally, not sure if they will be this easy...
That said, I'm aware of some gotchya's in how we did l10n so far, so probably easiest to leave l10n out for now (but I don't actually mind if it lands)
Secondarily my other comments are available for debate/discussion...
Overall this is very good (I didn't run locally to check its task output, though)
::: taskcluster/ci/build/macosx.yml
@@ +53,5 @@
> + product: firefox
> + job-name: macosx64-nightly-opt
> + treeherder:
> + platform: osx-10-7/opt
> + symbol: tc(B)
tc(N)
::: taskcluster/ci/nightly-l10n/kind.yml
@@ +132,5 @@
> + treeherder:
> + platform: macosx64/opt
> + worker:
> + env:
> + EN_US_PACKAGE_NAME: target.tar.bz2
target.dmg
::: taskcluster/taskgraph/target_tasks.py
@@ +158,5 @@
> return task.attributes.get('nightly', False)
> return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]
> +
> +
> +@_target_task('nightly_macosx')
I'm of the mindset that we should have all desktop as one target_tasks method, and not per-platform on desktop. This is of course debatable.
Attachment #8819399 -
Flags: feedback?(bugspam.Callek) → feedback-
Assignee | ||
Comment 6•8 years ago
|
||
Thanks for the feedback
I was going to leave the macosx part as a separate call so the current hook doesn't initiate it until we have the dependent issues fixed.
Attachment #8819399 -
Attachment is obsolete: true
Assignee | ||
Updated•8 years ago
|
Attachment #8819421 -
Flags: feedback?(bugspam.Callek)
Comment 7•8 years ago
|
||
Comment on attachment 8819421 [details] [diff] [review]
bug1324052-4.patch
Review of attachment 8819421 [details] [diff] [review]:
-----------------------------------------------------------------
::: taskcluster/ci/nightly-l10n/kind.yml
@@ +144,5 @@
> + - taskcluster_nightly.py
> + options:
> + - environment-config=single_locale/production.py
> + - branch-config=single_locale/{project}.py
> + - platform-config=single_locale/linux64.py
last minute catch s/linux64/macosx64/
Attachment #8819421 -
Flags: feedback?(bugspam.Callek) → feedback+
Assignee | ||
Comment 8•8 years ago
|
||
Attachment #8819421 -
Attachment is obsolete: true
Assignee | ||
Comment 9•8 years ago
|
||
Attachment #8819891 -
Attachment is obsolete: true
Assignee | ||
Comment 10•8 years ago
|
||
Assignee | ||
Comment 11•8 years ago
|
||
patch to consolidate nightly builds once mac builds are ready
hook definition will have to be updated to from nightly_linux to nightly_all
Assignee | ||
Comment 12•8 years ago
|
||
unbitrotten patch. I still have to refactor it to account for the signing and packaging pipeline in bug 1318505
Attachment #8819894 -
Attachment is obsolete: true
Assignee | ||
Comment 13•8 years ago
|
||
Attachment #8845505 -
Attachment is obsolete: true
Assignee | ||
Comment 14•8 years ago
|
||
So this is a patch I have in progress for nightly mac builds which fixes up the artifact format etc. It doesn't have the mach repackage task added
https://treeherder.mozilla.org/#/jobs?repo=try&revision=1de627b8fe2e15e72b512c7b82cf7e5a35b39d20
I realize the next step after running the signing job is is take the tarball it creates and pass it to mach repackage task to create the dmg with the signed artifacts.
I'm unsure of the parameters for the mach repackage job. Is it just a build task with different parameters than the first unsigned build job?
Attachment #8845528 -
Attachment is obsolete: true
Attachment #8845653 -
Flags: feedback?(bugspam.Callek)
Assignee | ||
Comment 15•8 years ago
|
||
notes: I haven't fixed taskcluster/taskgraph/transforms/beetmover.py yet, it's a todo
Updated•8 years ago
|
Attachment #8845653 -
Flags: feedback?(bugspam.Callek)
Comment 16•8 years ago
|
||
So, the (In reply to Kim Moir [:kmoir] from comment #14)
> Created attachment 8845653 [details] [diff] [review]
> bug1324052-9.patch
This looks like a good direction
> I realize the next step after running the signing job is is take the tarball
> it creates and pass it to mach repackage task to create the dmg with the
> signed artifacts.
>
> I'm unsure of the parameters for the mach repackage job. Is it just a build
> task with different parameters than the first unsigned build job?
It will be a mozharness job, probably a different script. The main reason for even using mozharness is to gather the tooltool bits to do the dmg creation and running configure.
I'm not certain how this will all look yet, but it will need the url to the signed tarball of course, and need chain of trust enabled.
this is the job that should also have the signing related routes attached, because it will be the deliverable we get out of signing.
Hope that helps.
Assignee | ||
Comment 17•8 years ago
|
||
sort of fell down a refactoring rabbit hole this afternoon. These patches are a wip, don't work yet.
Assignee | ||
Comment 18•8 years ago
|
||
I went for a walk in the snowstorm tonight and was thinking about my code. I think I took the wrong approach with the part where I'm trying to transform the build-signing task to a repackage task.
I think I need to just add a new task that, as aki suggested in irc
task.payload.upstreamArtifacts will point at the mac build-signing task
task.payload.features.chainOfTrust = True
and transform some of the upstream attributes to be a new repackage task.
fix routes
I'm not sure of the scopes, the worker type, or the mh script to be called.
Assignee | ||
Comment 19•8 years ago
|
||
Attachment #8847287 -
Attachment is obsolete: true
Assignee | ||
Comment 20•8 years ago
|
||
patches from this morning, refactored on top of bug 1333255, going to define a new task implementation for repackage now
the existing task implementations of balrog, beetmover, and scriptworker-signing have upstream artifacts defined but this task doesn't really fall in these categories
Attachment #8847618 -
Attachment is obsolete: true
Assignee | ||
Comment 21•8 years ago
|
||
running a try run now, not quite ready yet but making progress
Attachment #8847674 -
Attachment is obsolete: true
Assignee | ||
Comment 22•8 years ago
|
||
Try run is here
https://treeherder.mozilla.org/#/jobs?repo=try&revision=8f4ea23a3966383ca415f72eb4aa0494c4835d8a
https://public-artifacts.taskcluster.net/BKXYAlt2SLaW-GuRkbvfVA/0/public/full-task-graph.json
has task repackage-macosx64-nightly
things I still need to add but not sure of values
scopes
mh script to call
Also, not sure how to enable cot as feature in payload
will ask in #tcmigration
Attachment #8847783 -
Attachment is obsolete: true
Comment 23•8 years ago
|
||
- I think we should enable run-on-projects once we're ready
- I don't think scopes are important for this
- I don't know if the mh script is written yet?
- to enable cot generation, set task.payload.features.chainOfTrust to True
Assignee | ||
Comment 24•8 years ago
|
||
I tried several different ways last night and this morning
to enable cot generation, set task.payload.features.chainOfTrust to True
and it didn't work (wasn't included in graph). So if you have suggestions, I would appreciate it. Also, I'm not sure what the worker-type should be, do we need to define a new one or just use the build one which is gecko-1-b-linux?
Attachment #8847869 -
Attachment is obsolete: true
Flags: needinfo?(aki)
Comment 25•8 years ago
|
||
Is this what you're looking for?
https://hg.mozilla.org/integration/mozilla-inbound/file/tip/taskcluster/taskgraph/transforms/task.py#l461
https://hg.mozilla.org/integration/mozilla-inbound/file/tip/taskcluster/taskgraph/transforms/build.py#l25
You probably want to follow the build transform's chain of trust settings, including the docker image builder in task.extra.chainOfTrust.inputs as well.
I'm guessing the build workerType is best.
Flags: needinfo?(aki)
Assignee | ||
Comment 26•8 years ago
|
||
Yes, I tried that approach above but it didn't work but I will play with it some more. thanks!
Comment 27•8 years ago
|
||
If you're talking about
+ task = {
+ 'label': label,
+ 'description': "{} Signing".format(
+ dep_job.task["metadata"]["description"]),
+ 'worker-type': "scriptworker-prov-v1/signing-linux-v1",
+ 'worker': {'implementation': 'repackage',
+ 'upstream-artifacts': job['upstream-artifacts']},
+ # 'scopes': [signing_cert_scope] + signing_format_scopes,
+ 'scopes': repackaging_format_scopes,
+ 'dependencies': {job['depname']: dep_job.label},
+ 'attributes': attributes,
+ 'run-on-projects': dep_job.attributes.get('run_on_projects'),
+ 'treeherder': treeherder,
+ 'routes': job.get('routes', [])
+ # 'features': {'chainOfTrust': 'true'}
you commented out adding task.features, rather than setting task.worker.chain-of-trust
Assignee | ||
Comment 28•8 years ago
|
||
Aki, I still can't seem to get the chain of trust bits in the graph and it would be great to have a second set of eyes as to what I'm doing wrong.
Attachment #8848118 -
Attachment is obsolete: true
Flags: needinfo?(aki)
Comment 29•8 years ago
|
||
Comment 30•8 years ago
|
||
Ok. A few things:
I pushed my changes to https://hg.mozilla.org/try/pushloghtml?changeset=4cbd3683dc5ee31e45f04d5d7e025d23504b9b31 .
I was able to get task.payload.features.chainOfTrust set to True using the nightly_macosx target_task_method locally.
- we don't need both transforms.repackage and transforms.repackaging. I combined them and got the same graph
- the changes we make to the transforms.repackage task or job are basically changes that we pick up in transforms.task.build_repackage_payload . So if you add something like task['chain-of-trust'], you have to change the task definition in that function, and remove it from the task dict. If all tasks of a certain type have a certain feature, you can hardcode it there, or in the transforms, or taskcluster.ci yml files.
- upstreamArtifacts and scriptworker scopes are only relevant to scriptworker. We're going to be running mac repackaging on docker-worker, so this is going to look a lot more like the build kind than the signing kind. docker-worker requires a certain payload schema [1]. Most likely you want to pass through the @payload_builder('docker-worker') in transforms.task.
Does that help?
[1] https://github.com/taskcluster/docker-worker/blob/master/schemas/payload.json
Updated•8 years ago
|
Flags: needinfo?(aki)
Assignee | ||
Comment 31•8 years ago
|
||
yes, the taskgraph looks good thank you very much. Sorry I got off on the wrong path with two transforms, I tried the single transform earlier and I couldn't get it to work. I should have asked more questions earlier.
Assignee | ||
Comment 32•8 years ago
|
||
patches cleaned up to removed unused wip, fix pep8 errors
Attachment #8845653 -
Attachment is obsolete: true
Attachment #8848202 -
Attachment is obsolete: true
Assignee | ||
Comment 33•8 years ago
|
||
More cleanup.
https://treeherder.mozilla.org/#/jobs?repo=try&revision=f3c9d8f607d57750cc2ecfc07f5b9ee7f478e34c
Now that the graph is created correctly, I could land these on date (note the the patches are against m-c, may have to rebase a bit against date).
I talked to Callek, we are still sorting out how the mh script will be called, I will add an env to do that next
Attachment #8848343 -
Attachment is obsolete: true
Attachment #8848507 -
Flags: feedback?(aki)
Comment 34•8 years ago
|
||
Comment on attachment 8848507 [details] [diff] [review]
bug1324052tc-9.patch
You're still setting upstreamArtifacts (scriptworker only); I think these will break docker-worker. It also looks like you're still missing a bunch of the docker-worker task definition.
Here's a docker worker linux build from date:
https://queue.taskcluster.net/v1/task/azRfkWWjT7e7FAjBu3OaRg
The repackage task definition should look similar to that, with a different command and env.
Attachment #8848507 -
Flags: feedback?(aki) → feedback+
Assignee | ||
Comment 35•8 years ago
|
||
updated patches. still some work to be done.
Attachment #8848507 -
Attachment is obsolete: true
Assignee | ||
Comment 36•8 years ago
|
||
So the previous patches used implementation of docker-worker which isn't correct. I tried to change it to use the repackage implementation but it's not working and I think I need to look at it in the morning with fresh eyes. Going to ask aki if we can look at this together if I can't find solution it in the morning.
The attached file is the sorted json that is created with the previous patches. The scopes should be removed. I don't know if relengAPIProxy or taskclusterProxy are required. The mh command is not really defined yet because I'm not sure of the parameters and it needs a env to point to the signed artifacts according to Callek.
I'm not sure if the workertype is correct either.
Assignee | ||
Comment 37•8 years ago
|
||
latest patch doesn't work
I want to have
'worker': {'implementation': 'repackage',
in taskcluster/taskgraph/transforms/repackage.py
and it doesn't work
Assignee | ||
Comment 38•8 years ago
|
||
So here is the conclusion from talking to to aki
I should switch to transforming the build kind and override with the repackage kind. It includes both mh and docker-worker. So I should be able to transform it to include the correct command and env. The env should include a link to the task that will have the signing artifacts.
kmoir-mtg: 'dependencies': {job['depname']: dep_job.label},
1:55 PM "https://queue.tc.net/.../{depname:label}/..."
When the optimization of the graph completes, the repackage task will have a url to the task of the signed artifacts.
Assignee | ||
Comment 39•8 years ago
|
||
This patch is making progress. I'm attempting to replicate the bits from Callek's task here
https://tools.taskcluster.net/task-inspector/#Av6XRz0qT76mdO9C3HnsZQ/
My try run
https://treeherder.mozilla.org/#/jobs?repo=try&author=kmoir@mozilla.com&selectedJob=85479249
task graph generated from try run with repackage-macosx64-nightly/opt
https://public-artifacts.taskcluster.net/TRfl3l3PQt-tKqV_FM5HsA/0/public/full-task-graph.json
The things I am missing are
relengAPIProxy - callek suggested looking at
https://dxr.mozilla.org/mozilla-central/source/taskcluster/taskgraph/transforms/job/mozharness.py#130
https://dxr.mozilla.org/mozilla-central/source/taskcluster/taskgraph/transforms/job/mozharness.py#50
but I couldn't get it to work
The SIGNED_INPUT does not have the correct value, I think I know how to fix this
"SIGNED_INPUT": "https://queue.taskcluster.net/{depname:label}/target.tar.gz",
this is missing
"artifacts": {
"public/build": {
"path": "/home/worker/workspace/build/upload/",
"expires": "2017-04-17T19:18:20.235910Z",
"type": "directory"
}
},
Anyways, I will look at it again in the morning
Attachment #8848644 -
Attachment is obsolete: true
Attachment #8849191 -
Attachment is obsolete: true
Assignee | ||
Comment 40•8 years ago
|
||
Also, the dependencies are wrong
"dependencies": {
"build": "build-macosx64-nightly/opt"
},
They are fine if you look in the repackage task
u'dependencies': {u'build': u'signing-macosx64-nightly/opt'}
They must get overridden somewhere else
Assignee | ||
Comment 41•8 years ago
|
||
actually the dependencies are fine I just have read too many task graphs today
Assignee | ||
Comment 42•8 years ago
|
||
latest graph from my try run, Callek I would appreciate feedback on it, I know it's not 100% yet but want to make sure I'm on the correct path
Flags: needinfo?(bugspam.Callek)
Comment 43•8 years ago
|
||
This looks very close, things of note the artifacts should either be a directory listing piece, or a target.dmg entry, not the .zst
We of course need to have the environment piece expanded out (taskref-or-string type thing).
And lastly, the scopes will be needing some love, because of the relengapiproxy features for tooltool (we need the internal scope, at the least).
I do feel this task def is in the right direction.
I think we'll want some tweaking on the index routing, but I'd rather see where its coming from in a real patch before I comment much there.
Flags: needinfo?(bugspam.Callek)
Assignee | ||
Comment 44•8 years ago
|
||
updated patches
latest try run is here
https://treeherder.mozilla.org/#/jobs?repo=try&revision=65e323d71db5aa51c76e1644ce68daa4dc460964
Attachment #8848961 -
Attachment is obsolete: true
Attachment #8849808 -
Attachment is obsolete: true
Assignee | ||
Comment 45•8 years ago
|
||
new patches, still have to fix scopes
latest try run
https://treeherder.mozilla.org/#/jobs?repo=try&revision=61f235ecc75f2c8ff30d3fb0ec87f0e477278e9f
Attachment #8850105 -
Attachment is obsolete: true
Assignee | ||
Comment 46•8 years ago
|
||
fixed scopes
I'll also attach json from latest try run to verify that it is okay.
https://treeherder.mozilla.org/#/jobs?repo=try&revision=8ce8845c87861b5fc230ed13bb1c72a4b1172203
Attachment #8850195 -
Attachment is obsolete: true
Assignee | ||
Comment 47•8 years ago
|
||
callek does this look better?
Attachment #8850097 -
Attachment is obsolete: true
Flags: needinfo?(bugspam.Callek)
Comment 48•8 years ago
|
||
Comment on attachment 8850258 [details]
mac-signing.json
Starting to look good,
Current Concerns:
Artifacts: the output name is image.tar.zst instead of target.dmg
Caches: imagebuilder? probably not relevant. We want at least tooltool's cache as well.
Scopes: Other than appropriate scope for caches, we need `secrets:get:project/taskcluster/gecko/hgfingerprint`
`docker-worker:relengapi-proxy:tooltool.download.public`
in addition to `docker-worker:relengapi-proxy:tooltool.download.internal`
Environment: the value here (in json) is wrong, you have: "SIGNED_INPUT": "https://queue.taskcluster.net/v1/task/{task-reference: <build-signing>}/artifacts/public/build/target.tar.gz",
-- It should have a value of `{task-reference: "https://queue.taskcluster.net/v1/task/<build-signing>/artifacts/public/build/target.tar.gz"}` needs to actually be a dict.
Image: `"image": "taskcluster/image_builder@` pretty sure we need the build image.
Routes: I'm not sure we want `index.gecko.v2.try.repackage-nightly.*` as a thing at all, I'd chat with mshal before adding these. (Can omit these routes in pass 1, imo)
Flags: needinfo?(bugspam.Callek)
Assignee | ||
Comment 49•8 years ago
|
||
updated patches, will attach json from latest try run
https://treeherder.mozilla.org/#/jobs?repo=try&revision=f55217a147e19a746e8b6f22804109daa9213178
Attachment #8850256 -
Attachment is obsolete: true
Assignee | ||
Comment 50•8 years ago
|
||
Attachment #8850258 -
Attachment is obsolete: true
Assignee | ||
Updated•8 years ago
|
Attachment #8850573 -
Flags: feedback?(bugspam.Callek)
Assignee | ||
Updated•8 years ago
|
Attachment #8850572 -
Flags: feedback?(bugspam.Callek)
Comment 51•8 years ago
|
||
Comment on attachment 8850572 [details] [diff] [review]
bug1324052tc-15.patch
Review of attachment 8850572 [details] [diff] [review]:
-----------------------------------------------------------------
::: taskcluster/taskgraph/transforms/repackage.py
@@ +142,5 @@
> + ['docker-worker:relengapi-proxy:tooltool.download.internal',
> + 'secrets:get:project/taskcluster/gecko/hgfingerprint',
> + 'docker-worker:relengapi-proxy:tooltool.download.public'],
> + 'worker': {'implementation': 'docker-worker',
> + 'docker-image': docker_image('base-build'),
nope, this yields quay.io results, the image we should be using is the same one as OSX builds from the build kind.
@@ +155,5 @@
> + }],
> + 'artifacts': [{
> + 'type': 'file',
> + 'path': '/home/worker/workspace/artifacts/target.dmg',
> + 'name': 'public/image.tar.dmg',
name' ... 'target.dmg' not 'image.tar.dmg'
Attachment #8850572 -
Flags: feedback?(bugspam.Callek)
Updated•8 years ago
|
Attachment #8850573 -
Flags: feedback?(bugspam.Callek)
Comment 52•8 years ago
|
||
Comment on attachment 8850572 [details] [diff] [review]
bug1324052tc-15.patch
Noteworthy, iterations of this would be easier (for me) if it was through mozreview, since I could easily see the interdiff of various iterations, rather than trying to skim and see what changed...
Assignee | ||
Comment 53•8 years ago
|
||
Kims-MacBook-Pro:mozilla-inbound kmoir$ diff ~/bug1324052tc-15.patch ~/bug1324052tc-16.patch
3c3
< # Parent ddc1e4a43016fae924da600d07dc37ea5a4e685d
---
> # Parent c309f93f5c33eaaff2294ef70ab18158d3fbb25d
451c451
< + 'docker-image': docker_image('base-build'),
---
> + 'docker-image' : {"in-tree": "desktop-build"},
464c464
< + 'name': 'public/image.tar.dmg',
---
> + 'name': 'public/image.dmg'
Attachment #8850572 -
Attachment is obsolete: true
Assignee | ||
Comment 54•8 years ago
|
||
10c10,11
< "build": "signing-macosx64-nightly/opt"
---
> "build": "signing-macosx64-nightly/opt",
> "docker-image": "build-docker-image-desktop-build"
45c46
< "description": "MacOS X x64 Cross-compile Nightly ([Treeherder push](https://treeherder.mozilla.org/#/jobs?repo=try&revision=f55217a147e19a746e8b6f22804109daa9213178)) Signing ([Treeherder push](https://treeherder.mozilla.org/#/jobs?repo=try&revision=f55217a147e19a746e8b6f22804109daa9213178)) Repackage ([Treeherder push](https://treeherder.mozilla.org/#/jobs?repo=try&revision=f55217a147e19a746e8b6f22804109daa9213178))",
---
> "description": "MacOS X x64 Cross-compile Nightly ([Treeherder push](https://treeherder.mozilla.org/#/jobs?repo=try&revision=5ccfef960e430e48c1d35ea0794396559a60df13)) Signing ([Treeherder push](https://treeherder.mozilla.org/#/jobs?repo=try&revision=5ccfef960e430e48c1d35ea0794396559a60df13)) Repackage ([Treeherder push](https://treeherder.mozilla.org/#/jobs?repo=try&revision=5ccfef960e430e48c1d35ea0794396559a60df13))",
48c49
< "source": "https://hg.mozilla.org/try//file/f55217a147e19a746e8b6f22804109daa9213178/taskcluster/ci/repackage"
---
> "source": "https://hg.mozilla.org/try//file/5ccfef960e430e48c1d35ea0794396559a60df13/taskcluster/ci/repackage"
52c53
< "public/image.tar.dmg": {
---
> "public/image.dmg": {
80c81
< "GECKO_HEAD_REV": "f55217a147e19a746e8b6f22804109daa9213178",
---
> "GECKO_HEAD_REV": "5ccfef960e430e48c1d35ea0794396559a60df13",
87c88
< "MOZ_BUILD_DATE": "20170323160138",
---
> "MOZ_BUILD_DATE": "20170323175157",
101c102,108
< "image": "quay.io/mozilla/base-build@sha256:e3fa6fef48461c8a3977f2e328024a1c505b6e78a5f692b964488b45df3a1a2f",
---
> "image": {
> "path": "public/image.tar.zst",
> "taskId": {
> "task-reference": "<docker-image>"
> },
> "type": "task-image"
> },
106,107c113,114
< "tc-treeherder.v2.try.f55217a147e19a746e8b6f22804109daa9213178.178244",
< "tc-treeherder-stage.v2.try.f55217a147e19a746e8b6f22804109daa9213178.178244"
---
> "tc-treeherder.v2.try.5ccfef960e430e48c1d35ea0794396559a60df13.178268",
> "tc-treeherder-stage.v2.try.5ccfef960e430e48c1d35ea0794396559a60df13.178268"
Attachment #8850573 -
Attachment is obsolete: true
Assignee | ||
Updated•8 years ago
|
Attachment #8850612 -
Flags: feedback?(bugspam.Callek)
Assignee | ||
Comment 55•8 years ago
|
||
patch for latest on date branch
Comment 56•8 years ago
|
||
Comment on attachment 8850615 [details]
mac-repackage2.json
Current concerns:
dependency+SIGNED_INPUT: the <build-signing> in SIGNED_INPUT won't match the `name` on any of the dependencies. (we have 'build' and 'docker-image' as deps, not 'build-signing') please match them up.
This looks a lot better, thanks!
Assignee | ||
Comment 57•8 years ago
|
||
Thanks for all the reviews Callek. I appreciate it and know I've asked a lot the last few days.
diff between last two patches
430c430
< + dependencies = {job['depname']: dep_job.label}
---
> + dependencies = {dep_job.attributes.get('kind'): dep_job.label}
Kims-MacBook-Pro:mozilla-inbound kmoir$ diff ~/mac-repackage2.json ~/mac-repackage3.json
10c10
< "build": "signing-macosx64-nightly/opt",
---
> "build-signing": "signing-macosx64-nightly/opt",
https://treeherder.mozilla.org/#/jobs?repo=try&revision=b714019ea37746f99b68c4a99adef086003d882b&selectedJob=86095949
mozreview is on my list of things to start using, I just have a lot of bugzilla muscle memory.
Attachment #8850612 -
Attachment is obsolete: true
Attachment #8850612 -
Flags: feedback?(bugspam.Callek)
Attachment #8850807 -
Flags: feedback?(aki)
Assignee | ||
Comment 58•8 years ago
|
||
Attachment #8850615 -
Attachment is obsolete: true
Assignee | ||
Comment 59•8 years ago
|
||
Attachment #8850685 -
Attachment is obsolete: true
Comment 60•8 years ago
|
||
Comment on attachment 8850807 [details] [diff] [review]
bug1324052tc-17.patch
Just looking at the diff you posted, those look like good changes.
Attachment #8850807 -
Flags: feedback?(aki) → feedback+
Assignee | ||
Comment 61•8 years ago
|
||
kmoir
https://tools.taskcluster.net/task-group-inspector/#/Dmvttt5HRxOwWgvGhuy74g?_k=6efiw7
4:34 PM build is running
4:35 PM I need to change all the dependencies so that beetmover etc depend on mac repackage not signing
aki
yeah
4:37 PM windows will also need special beetmover etc deps
Assignee | ||
Comment 62•8 years ago
|
||
I also had to land this patch to add the signing:dmg scope and then add the scope here
https://tools.taskcluster.net/auth/roles/#project:releng:nightly:level-3:*
Assignee | ||
Comment 63•8 years ago
|
||
The repackage job ran but the link to the dmg artifact says it is missing on the worker
https://tools.taskcluster.net/task-group-inspector/#/Dmvttt5HRxOwWgvGhuy74g/cxi6BhRpRY2f0X4c6cbLNw?_k=f01een
Comment 64•8 years ago
|
||
(In reply to Kim Moir [:kmoir] from comment #63)
> The repackage job ran but the link to the dmg artifact says it is missing on
> the worker
>
> https://tools.taskcluster.net/task-group-inspector/#/Dmvttt5HRxOwWgvGhuy74g/
> cxi6BhRpRY2f0X4c6cbLNw?_k=f01een
From the log:
[task 2017-03-24T21:00:04.731024Z] 21:00:04 INFO - Copy/paste: python2.7 mach --log-no-times repackage --input /home/worker/workspace/inputs/target.tar.gz --output /home/worker/workspace/build/upload/target.dmg
From the task definition:
"artifacts": {
"public/image.dmg": {
"path": "/home/worker/workspace/artifacts/target.dmg",
Looks like you want to change that path to "/home/worker/workspace/build/upload/target.dmg" . Also, "public/image.dmg" probably wants to be "public/build":
"artifacts": {
"public/build": {
"path": "/home/worker/workspace/build/upload/target.dmg",
Comment 65•8 years ago
|
||
https://hg.mozilla.org/projects/date/rev/0d9ede0c99c6f27eb6ff5152f73a4983c54a126b
bug 1324052 - fix repackage artifact upload.
Comment 66•8 years ago
|
||
(In reply to Aki Sasaki [:aki] from comment #64)
> "artifacts": {
> "public/build": {
> "path": "/home/worker/workspace/build/upload/target.dmg",
Looks like I have to specify "public/build/target.dmg", probably because this isn't a directory.
Comment 67•8 years ago
|
||
https://hg.mozilla.org/projects/date/rev/405e6792178d964fea8b2b3f6a3736579d2e1adb
bug 1324052 - public/build/target.dmg. DONTBUILD
Assignee | ||
Comment 68•8 years ago
|
||
consolidated patches on date
I have to clean them up to remove the logging stuff I was using for debugging as well as fix the schema verification for repackage.
Now, I'll work on fixing the dependencies for beetmover so that they shift to depending on the repackage task for mac, but remain the signing task for other platforms
Attachment #8851041 -
Attachment is obsolete: true
Attachment #8851096 -
Attachment is obsolete: true
Assignee | ||
Comment 69•8 years ago
|
||
so the beetmover doesn't can't currently deal with tasks that have two dependencies
and the repackage task has dependencies like this
"dependencies": {
"build-signing": "signing-macosx64-nightly/opt",
"docker-image": "build-docker-image-desktop-build"
},
so I think I need to transform the job for macosx in the beetmover transform
Comment 70•8 years ago
|
||
That's the second time beetmover's funny business with dependencies has caused issues. Maybe it can be reconsidered? I don't understand the rationale too well, so all I can do is suggest the possibility that maybe the beetmover implementation should be changed.
Assignee | ||
Comment 71•8 years ago
|
||
so these are preliminary patches to change the dependencies for macosx nightlies so the beetmover task depends on repackage instead of build-signing
they are very hacky. I just changed the beetmover kind to have two dependencies and then changed the beetmover transforms and loader not to load the dependency that's not needed macosx and vice versa
The alternative approach is the add another kind but then you have to add new kinds for all the following tasks because if you have a new beetmover kind for macosx, then for balrog then for checksums etc.
So I'm looking for feedback if this is the right approach or not.
The l10n dependencies are not fixed.
I'll attach the json from a try run in the next patch.
Assignee | ||
Comment 72•8 years ago
|
||
beetmover-repackage-macosx64-nightly
from this try run
https://treeherder.mozilla.org/#/jobs?repo=try&revision=cc782df798acab5685b563c2232b36320c33a46a
There are several things wrong with this
for instance
"task-reference": "<repackage>" in the payload
for the build artifacts
the non-dmg artifacts should be from the build task, yet the dmg needs to be from the signed build
anyways, wip
Assignee | ||
Comment 73•8 years ago
|
||
Mshal, what should be the routes for the repackage task? Callek mentioned in comment 48 that I should ask you about this.
Flags: needinfo?(mshal)
Assignee | ||
Comment 74•8 years ago
|
||
This bug covered adding macosx nightly builds and the signing and repackage tasks to the taskgraph.
I opened bugs 1352417 (beetmover) and 1352426 (balrog) parts of the taskgraph. They depend on other beetmover and balrog bugs that need to be implemented before we can add them to the taskgraph.
Comment 75•8 years ago
|
||
Do we need to index both the artifacts from the signing task and the repackage task? IMO the signing task is really just intermediate in this case, and we should only index the repackaged task. Callek and I chatted about how to index the final signed artifacts, which I believe are the ones under gecko.v2.mozilla-central.signed-nightly
Flags: needinfo?(mshal)
Comment 76•8 years ago
|
||
https://hg.mozilla.org/build/puppet/rev/ca09fef599e812bfbfc9b86b72764781243f95e4
bug 1324052 - bump scriptworker versions to allow for repackage cot. r=callek
Assignee | ||
Updated•8 years ago
|
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Updated•7 years ago
|
Product: TaskCluster → Firefox Build System
You need to log in
before you can comment on or make changes to this bug.
Description
•