Deploy BUILD-INFO.txt in specified official builds (all builds)
Why:
In the 12.07 cycle we have implemented support for keeping BUILD-INFO.txt (a description of access protection and optional EULA associated with binary downloads) along with the vendor binary blobs. This simplifies the infrastructure and removes the need to maintain fragile naming patterns. While coding is complete we still need to deploy this to all of our production builds to reap the benefits.
Who:
Zygmunt Krynicki
Where:
1) Jenkins configuration for each build
2) snapshots.
Context:
No card, general platform work.
Blueprint information
- Status:
- Started
- Approver:
- Zach Pfeffer
- Priority:
- High
- Drafter:
- None
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- Drafting
- Series goal:
- Proposed for 2012q2
- Implementation:
- Blocked
- Milestone target:
- backlog
- Started by
- Zygmunt Krynicki
- Completed by
Related branches
Sprints
Whiteboard
[zkrynicki, 2012-07-23] Moving remaining work items from https:/
[zkrynicki, 2012-07-23] Updated origen overlay now deployed on snapshots.
[zkrynicki, 2012-07-23] Started fakeblob build for origen: https:/
[zkrynicki, 2012-07-23] "restricted" overlay is now technically installed (as tests/*
[zkrynicki, 2012-07-24] Using panda build with source overlays for all tests. This avoids build errors that otherwise arise (some parts of the overlay are essential for the build).
[zkrynicki, 2012-07-24] Initial tests seem to indicate that BUILD-INFO.txt is still ignored and name pattern (name of the build) still overrides all other settings. I've started another build under 'neutral' name to confirm: https:/
[zkrynicki, 2012-07-25] I've sent an email about the failed builds to the mailing list and all the stakeholders / essential engineers ( http://
[zkrynicki, 2012-07-25] I've synced with gesha about the current implementation and our BUILD-INFO.txt files. We've also spotted two issues with the previous tests: 1) the overlay was specified twice which confused me in reading the results back 2) the snowball and origen overlay used *.tar.gz file pattern. This is now fixed in git, the new pattern is *.tar.* which should hopefully be future-proof. I'll request a new upload of test overlays. This also means that real snowball overlay we've uploaded earlier is incorrect and any build done with it will not show the EULA correctly.
[zkrynicki, 2012-07-25] Requested: [rt.linaro.org #550] AutoReply: Upload two overlay tarballs to snapshots.
[zkrynicki, 2012-07-26] Testing and gesha confirms that BUILD-INFO.txt is _ignored_ unless the build configuration includes the word 'blob' in it. This cannot be fixed until the rollout of staging servers and successful upgrade from old php codebase to new django codebase.
[zkrynicki, 2012-07-26] Running tests on configuration with 'blob' in the name https:/
[zkrynicki, 2012-07-26] Builds fail with OOM killer killing things. Gesha is investigating. Similar situation is currently affecting ICS panda and JB nexus (but not panda). Unclear as for why this is occurring now
[zkrynicki, 2012-07-26] Blocked by https:/
[zkrynicki, 2012-07-27] Tests show that 'blob' is not sufficient. Gesha confirmed this and checked the code. We need both 'blob' and either 'origen' or 'snowball'. Aborting further tests with PHP codebase. Testing with Django codebase (revno 86)
[zkrynicki, 2012-07-27] Tests with django codebase were positive. It seems that all protection systems work correctly. I could not finish openid testing as my localhost application was not whitelisted to reveal appropriate group membership (still the download to affected files was rejected). Testing also found that the *.tar.* pattern does _not_ protect *.img files which could be a problem for uboot and later full-system images as prepared for fastboot.
[zkrynicki, 2012-07-27] We had a sync meeting (asac, pfeffers, gesha, jamestunnicliffe and me) to address the roadmap of this blueprint. We've decided to postpone all further work until Django rewrite lands in production. I will still file RT tickets to remove the broken snowball uploads and to send my locally repackaged vendor tarballs back.
[zkrynicki, 2012-07-27] Moving this task to backlog
[zkrynicki, 2012-07-27] Last update: I've removed the incorrect snowball vendor tarballs, requested new tarballs to be uploaded (for both snowball and origen) via RT ticket 555. I've patched the branches at https:/
Quick status:
Sending to backlog until django deployment lands
Headline: TBD
Acceptance: TBD
Work Items
Work items:
Install test overlays on snapshots.
Run additional tests under different names as previous tests suggest name pattern still overrides BUILD-INFO.txt: DONE
Run four private test builds with test overlays to validate license settings (open): DONE
Upload fixed test/mock overlays for snowball and origen (RT ticket 550): DONE
Run four private test builds with test overlays to validate license settings (snowball): DONE
Run four private test builds with test overlays to validate license settings (restricted): DONE
Run four private test builds with test overlays to validate license settings (origen): DONE
Figure out which part of the build/download system is incorrect (with Gesha): DONE
Test BUILD-INFO.txt on new Django codebase: DONE
Remove incorrect snowball vendor tarballs (RT ticker 554): DONE
Re-install updated/fixed overlay for snowball on snapshots.
Install updated overlay for origen on snapshots.
Install restricted overlay on snapshots.
Enumerate all the build configurations that need patching: POSTPONED
Patch each configuration to use new overlay: POSTPONED
Test each build: POSTPONED
Dependency tree
* Blueprints in grey have been implemented.