Commit graph

74 commits

Author SHA1 Message Date
Mårten Kongstad
3ada31ed55 finalization: set FINAL_STATE to 'rel'
VIC is set to REL. Accordingly, set FINAL_STATE to 'rel' to prevent the
finalization scripts from running steps that have already been merged.

Bug: 335304236
Test: treehugger (main-fina-2-release succeed)
Ignore-AOSP-FIRST: arrives in aosp with ap3a
Change-Id: Id42c3ae2ffead62ac6019690f0586d8db8d22ef8
2024-05-22 08:30:29 +02:00
Hsin-Yi Chen
a2440a3e4a Create APEX ABI dumps with next release configuration
Next release configuration maps the codename to the finalized API
level, but fina_2 doesn't.

Ignore-AOSP-First: Finalization scripts are not on AOSP
Test: build/make/tools/finalization/finalize-sdk-rel.sh
Bug: 340507697
Change-Id: I00e55bf350ff5b5f5b10f9e74ceff38b0660dde3
2024-05-15 08:32:27 +00:00
Treehugger Robot
1a7a53388b Merge "Add the step to generate LLNDK ABI dumps" into main 2024-05-08 06:20:44 +00:00
Gurpreet Singh
721c16c812 Merge "V is 35." into main 2024-04-30 15:52:21 +00:00
Hsin-Yi Chen
a7d2200a71 Add the step to generate LLNDK ABI dumps
Test: build/make/tools/finalization/finalize-vintf-resources.sh
Bug: 314010764
Ignore-AOSP-First: Finalization scripts are not on AOSP
Change-Id: Ibe77d2f2aa70d3cc85086c00bb3eba00da0986f5
2024-04-30 02:43:21 +00:00
Gurpreet Singh
06dad4f3c2 V is 35.
It's not bromine, it's not a gauge of film: it's the next Android
release.

Set final state to "sdk" marking step-1 of finalization as complete.

Ignore-AOSP-First: Finalization is not performed in AOSP.
Bug: 335304236
Test: presubmit
Change-Id: Ifebf6ce36c5aa5c987d434085ca812f18e97ad4f
2024-04-29 13:24:25 +00:00
Hsin-Yi Chen
b18cd88625 Create ABI dumps for APEX libraries at finalization step 2
Ignore-AOSP-First: merge conflict
Test: build/make/tools/finalization/finalize-sdk-rel.sh
Bug: 333532038
Change-Id: I4e6d8f7e2489d51899ca878a3c965e5a14799cc3
2024-04-23 19:38:40 +08:00
Gurpreet Singh
5398070941 Merge "Change build-release target for building module sdks" into main 2024-04-19 10:06:58 +00:00
Hsin-Yi Chen
28e19ef89d Do not copy platform ABI dumps from current
In trunk stable, the ABI dumps in "current" directory are not what we
intend to finalize. They need to be removed. The step will be replaced
with a command that builds ABI dumps.

Ignore-AOSP-First: merge conflict
Test: build/make/tools/finalization/finalize-sdk-rel.sh
Bug: 333532038
Change-Id: I08896b637b34861e73cff4d829941d9fb5c56475
2024-04-19 03:12:55 +00:00
Gurpreet Singh
cdb07595a1 Change build-release target for building module sdks
--build-release=latest => Include all new APIs in API tracking files
along with the @FlaggedAPI annotation prefix.

--build-release=next => Include only those new APIs in API tracking
files for which the flag is enabled. Also the @FlaggedAPI annotation
prefix is removed from API tracking files.

Ignore-AOSP-first: VIC finalization happens outside AOSP
Bug: 335454564
Test: croot && build/tools/finalization/localonly-steps.sh
Change-Id: I3fdd71ac385835b3b961336d86604e86dfed31cf
2024-04-18 17:16:39 +00:00
Mårten Kongstad
023fa5dc17 finalization: do not generate the ADB keys
The ADB keys have already been generated for Android 15. Remove that
step from the scripts.

Bug: 323940469
Test: TH
Ignore-AOSP-first: VIC finalization happens outside AOSP
Change-Id: I83184740bfc1db3104e320b76638253a5892507c
2024-04-12 14:31:12 +02:00
Treehugger Robot
34bf92dad2 Merge "Update api_levels.go instead of api_constants.bzl" into main 2024-04-09 18:06:46 +00:00
Cole Faust
f13fd59f55 Update api_levels.go instead of api_constants.bzl
This is a revert of aosp/2573034, but as a separate cl because the
filename has been changed. We're reverting aosp/2573034 because the
bazel migration has been cancelled and that api_constants.bzl file
was changed to not be used.

Ignore-AOSP-First: Someone else renamed this file in internal-only.

Bug: 315353489
Test: Manually ran this snippet of shell script
Change-Id: I3a51be1119109d2a6cf3959bdc8a48192872580f
2024-04-09 17:51:20 +00:00
Mårten Kongstad
6c6a1b5b8e finalization: use same repo branch during dry-run
Teach step-*.sh to re-use the same branch name if running in dry-run
mode. This is useful for running the steps sequentially: if using
different branch names, each 'repo start' will undo the changes created
during the previous step-*.sh.

Bug: 323940469
Test: croot && build/tools/finalization/step-1.sh --dry-run && build/tools/finalization/step-2.sh --dry-run
Ignore-AOSP-first: VIC finalization happens outside AOSP
Change-Id: I720f294f6abf5a8b276bb30f8c531fcbea749b76
2024-04-08 17:15:22 +02:00
Devin Moore
920037c8d2 Remove AIDL_FROZEN_REL from step-1/step-2 finalization
That variable is used to ensure all VINTF interfaces are frozen and is
needed for vFRC/VINTF finalization is step-0.
Since SDK finalization (step-1 and step-2) are done at a different time,
they shouldn't care about unfrozen VINTF interfaces.

Ignore-AOSP-First: b/304316873#comment10

Test: na
Bug: 333039895
Change-Id: Ica6807599d5b18078ecea96d939e147d4785749e
2024-04-05 15:38:13 +00:00
Mårten Kongstad
e851b8f749 finalization: step-*.sh: optionally skip repo upload
Teach the step-*.sh scripts to parse command line options. Add support
for --dry-run, which will skip the part where the CLs are uploaded:
useful for local experiments.

Bug: 323940469
Test: croot && build/tools/finalization/step-1.sh --dry-run # verify no CLs uploaded
Ignore-AOSP-first: VIC finalization happens outside AOSP
Change-Id: Ia58da02ae7a69c24f8332c90d1c779884e3a1dab
2024-04-04 10:45:01 +02:00
Treehugger Robot
75e2a917db Merge "Finalization: update OWNERS" into main am: 18bd5afc16 am: c97760dcad
Original change: https://android-review.googlesource.com/c/platform/build/+/3024905

Change-Id: I7a096af2c9483d911bb16c493c1aa066fb2e940e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-04-03 16:10:53 +00:00
Mårten Kongstad
bf1b2ba6b2 Finalization: update OWNERS
Add new folks working on finalization, remove folks no longer working on
it.

Also, sort the entires alphabetically.

Bug: 323940469
Test: N/A
Change-Id: Ib8f6c3f485a06e3d1269e4142317174ae7ac276b
2024-04-03 17:20:42 +02:00
Alex Buynytskyy
10411eeb71 DryRun scripts.
Bug: 323940469
Test: run locally
Ignore-AOSP-First: local changes first

Change-Id: Ia27924a01433e613496e9a624f93d385a08678a3
2024-03-19 19:06:16 +00:00
Alex Buynytskyy
5b34f3f627 Finalization bugfixes.
Keep codenames in the platform_versions.txt to allow for non-REL builds.

Bug: 323940469
Test: local run
Ignore-AOSP-First: Release configs are interal repo only.
Change-Id: I664ac1c32c3aae5175d3b7a36ac763b35181bc22
2024-03-15 00:31:14 +00:00
Alex Buynytskyy
f05c249d2a Finalization bugfixes.
Keep isAtLeast* functions compatible with older release configs.

Fixes: 329312253
Test: local run + presubmit
Ignore-AOSP-First: release configs present in internal repo only
Change-Id: I776dd808e2e01e8a1c7a6f9b6171fd84f49cdcdf
2024-03-13 18:39:43 +00:00
Alex Buynytskyy
4fb99d85e6 Finalization bugfixes.
- keep previous platform versions in platform_releases.txt,
- fix for the build version test,
- after discussion with Yuri, keep non-REL resource sdk_int the same.

Bug: 323940469
Test: local run
Ignore-AOSP-First: release configs present in internal repo only
Change-Id: I6637e109191480ded615ef35c9185d927ddaec40
2024-03-12 19:41:05 +00:00
Alex Buynytskyy
e0e2f75fc2 Prepare for V finalization.
Bug: 323940469
Test: run locally
Ignore-AOSP-First: local first
Change-Id: Ie394523f7ea67a5475ad1af98a0586b4421e4c17
2024-03-06 23:46:48 +00:00
Devin Moore
6df2f8f647 Vendor API level 202404 is now frozen
Update the state to 'vintf' so we don't try to re-finalize the same
level.

Ignore-AOSP-First: VINTF 202404 Finalization
Bug: 279809333
Test: build
Change-Id: I06530eedaeb69cc9d4a9b3af5b91a101ab2eab7d
2024-02-27 00:04:50 +00:00
Devin Moore
63d4b06b18 Merge "finalization: add a step to freeze the framework manifest" into main 2024-02-16 20:32:01 +00:00
Devin Moore
bdc54ada9d finalization: add a step to freeze the framework manifest
Make sure we aren't making backward incompatible changes to the
framework HALs that system serves.

Ignore-AOSP-First: b/304316873#comment10

Test: ./finalize-vintf-resources.sh
Bug: 266741352
Change-Id: I056f2e6f92cdd496b88dc52bcd1c7a51e9ffb85f
2024-02-15 18:46:20 +00:00
Treehugger Robot
9292413f7c Merge "Use full path for sepolicy finalization script" into main 2024-02-12 17:30:46 +00:00
Devin Moore
56f8a77012 Use existing script to create new compatibility matrix
During vintf finalization we need to create a new compatibility matrix
and kernel configs for that new level. There is an existing script that
can already do this! Use it!

Ignore-AOSP-First: b/304316873#comment10

https://android-build.corp.google.com/builds/abtd/run/L07600030001757459

Test: ./finalize-vintf-resources.sh
Bug: 279809333
Change-Id: Ie97c762943445c8c95a8ebf0ea1b8c6610dc69b2
2024-02-09 18:10:40 +00:00
Justin Yun
7c28c2327d Define step-0 for vintf finalization
Define `vintf` state that have completed vintf finalization only.
Only if FINAL_STATE is 'unfinalized' run the vintf finalization
process to finalize vintf.
The new step-0 only runs the vintf finalization.

Ignore-AOSP-First: trunk-stable changes (b/304316873)

Bug: 318883690
Test: build-step-0.sh && build/soong/soong_ui.bash \
    --make-mode TARGET_PRODUCT=cf_x86_64_phone TARGET_RELEASE=fina_0 \
    TARGET_BUILD_VARIANT=userdebug droid dist
Change-Id: If3525f38204fa546744b9ccf8dc9e63711823abd
2024-02-06 11:56:00 +09:00
Devin Moore
df129fbbf9 Use full path for sepolicy finalization script
Otherwise we can only run main script from ANDROID_BUILD_TOP

Ignore-AOSP-First: b/304316873#comment10

https://android-build.corp.google.com/builds/abtd/run/L79300030001797715

Test: ./finalize-vintf-resources.sh
Bug: none
Change-Id: Id9a8c27b9ceb6741c0990d2189bb555d1f60c89d
2024-02-03 00:51:55 +00:00
Inseob Kim
9d5066b5f2 Move sepolicy finalization to vintf
Ignore-AOSP-First: b/304316873#comment10

Bug: 314010177
Test: ABTD run with fina-1 and fina-2
Change-Id: I5324eb0c619b9d3ddc5fcda0ce52f614f8596f6c
2024-01-30 03:34:56 +00:00
Steven Moreland
b5f5e2d8da finalization: remove VNDK current.txt copy
Since we no longer have the VNDK, we don't need
to update this file.

Fixes: 318888218
Test: todo ABDT
Change-Id: I4c4380292ca92fedfe12b80c46bed5cbef240a2e
2024-01-29 18:34:03 +00:00
Steven Moreland
af6c94a9a6 finalization: remove VNDK stuff
Now that the VNDK is deprecated, we can remove all
references in the finalization script. This is a no-op
since it is only removing comments.

Bug: 318888218
Test: `grep -rin vndk` no output
Change-Id: Ia07dffc21d5e02e6d6d52400a2fdf6572242c160
2024-01-29 18:33:48 +00:00
Devin Moore
395d5e32e2 Capture queryview stderr and stdout in finalization scripts
Sometimes the output wasn't grep-able and this fixes it.

Ignore-AOSP-First: b/304316873#comment10

Test: Run the bazel query command multiple times before/after
      and verify it works 100% of the time after.
Bug: 320589170
Change-Id: Ic60d3318287353aa71fdeb2c540899d588a2d273
2024-01-17 16:51:10 +00:00
Devin Moore
196c1b5352 Update vintf levels for finalization script
This year's vintf levels changed from 9 to 202404, so the levels in the
finalization script need to change.

Ignore-AOSP-First: b/304316873#comment10

Test: ./finalize-vintf-resources.sh
Bug: 320589170
Change-Id: I2e9b3953233c8d032f44f379546919b9f3642a6f
2024-01-17 16:50:59 +00:00
Devin Moore
a1339afbb3 Add new function to create a new compat matrix for finalization
Creates the next version of the file based on the previous.
Replaces the "level" value with the new one in the file.
Adds a new Android.bp module that inherits from the previous.
Adds the current matrix file unconditional to all builds.
Adds the new matrix file contintionally based on release config.
This is used in finalize-vintf-resources.sh.

Ignore-AOSP-First: b/304316873#comment10

Test: ./finalize-vintf-resources.sh
Bug: 279809333
Change-Id: Ic14b3b82a33af3cce7a738dce5ad48112b8fb33d
2024-01-13 00:21:44 +00:00
Steven Moreland
0f84e4b21c Split finalization scripts between vFRC and sFRC.
This splits out the AIDL/VNDK/sepolicy stuff from the SDK
finalization. However, in CI, we still do the vFRC step
as part of the first step.

We'll probably want to do some of the following:
- (maybe) add CI for the first step - a 'fina-0' branch
- add a way to do SDK finalizatoin without VINTF finalization
  because after VINTF finalization is submitted, people will
  develop in-progress interfaces that aren't done yet
- a lot of VINTF finalization is still not automated, so things
  like sepolicy and LL-NDK need to be added here.

Ignore-AOSP-First: b/304316873#comment10

Bug: 314010935
Test: N/A
Change-Id: I4831a14f5c5c3d757bd1d10a775d8cf4940d9a4a
2023-12-27 00:24:00 +00:00
Steven Moreland
5fe439eec2 finalization: remove 'update' scripts
alexbuy@ said:

    please remove both update-* scripts. they were part of r&d project
    that was never finished

Ignore-AOSP-First: b/304316873#comment10

Bug: 314010935
Test: N/A
Change-Id: Iecc22cc860ba67fec336adb0c5b93f51677dc9ce
2023-12-27 00:22:39 +00:00
Treehugger Robot
53477c86e0 Merge "Add the next release to Class2NonSdkList." into main am: 2f9162f1cb am: 0ecfef4423 am: efe2a3408d
Original change: https://android-review.googlesource.com/c/platform/build/+/2858125

Change-Id: I52fae823f4c3e22f507123c188923a5b56d2725b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-12-05 02:18:32 +00:00
Alex Buynytskyy
48d64b886a Add the next release to Class2NonSdkList.
Fixes: 313893203
Test: step-1
Change-Id: I0f6ae822cd206df23a2ffd1dade78bb430006c5d
2023-12-04 23:15:43 +00:00
Jihoon Kang
2aa62be7ae Merge "Set BUILD_FROM_SOURCE_STUB=true for finalization" into main am: 3b12b769e4 am: 36f8125650 am: 09618c6ef6
Original change: https://android-review.googlesource.com/c/platform/build/+/2830911

Change-Id: I59f91a848e72fbb054adcbad20ccbad7446554f7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-11-15 18:30:43 +00:00
Jihoon Kang
59c61acf64 Set BUILD_FROM_SOURCE_STUB=true for finalization
Build from text stub feature was initially implemented to improve build
performance and may be unstable for api finalization, as the stubs
generated from api signature files miss some methods, which may cause
backward compatibility issues. Therefore, this change disables building
from text stub for api finalization.

Test: build/tools/finalization/finalize-aidl-vndk-sdk-resources.sh and inspect generated ninja file to verify that the stubs are generated from source Java files.
Bug: 310279899
Change-Id: I9d374e973788bc97514815f64eeb949a94a97647
2023-11-15 00:38:41 +00:00
Alex Buynytskyy
3fa5db0c08 Finalization for Trunk Stable, REL.
Ignore-AOSP-First: local first
Bug: 304316873
Test: build/make/tools/finalization/build-step-1-and-2.sh
Change-Id: I6d5c6d58cad755f44766a77583dfbbd7d612fed4
2023-11-09 05:02:11 +00:00
Alex Buynytskyy
b1f263c5f8 Finalization for TS: VNDK cleanup.
- explicitly specify release config for internal builds (trunk),
- remove unnecessary VNDK steps.

Ignore-AOSP-First: local first
Bug: 304316873
Test: build/make/tools/finalization/build-step-1.sh
Change-Id: I709f09b6ca9ce3c30541ab88815761d8688b538c
2023-11-09 01:13:34 +00:00
Alex Buynytskyy
df633571e8 Trunk Stable finalization.
Ignore-AOSP-First: local first
Bug: 304316873
Test: build/make/tools/finalization/build-step-1.sh
Change-Id: I17319cbf9abeaadcbd3c26998c541e7aa400e4fb
2023-11-07 21:19:41 +00:00
Inseob Kim
4b11cd1a1c Fix sepolicy finalization build error
Bug: 304532197
Test: manually run finalization script
Change-Id: I29f62d7c703081302f1133e881e33fa2ff7d16bf
2023-10-11 22:57:58 +09:00
Alex Buynytskyy
bce1a51df8 Use patch instead of git apply.
Bug: 281682520
Test: run locally
Change-Id: Ia84055b7a9074836c6d7b3039ba980e39043a41e
2023-06-16 20:23:36 +00:00
Alex Buynytskyy
aac2a187d4 Improve finalization perfomance by building only current version.
Bug: 275409981
Test: run locally
Change-Id: If531178a17792166726ff7ed230592c392eeb899
2023-05-10 03:10:32 +00:00
Alex Buynytskyy
00a88ec3ec Script fixes and improvements.
Fix to mark all versions REL.

More robust patch application. Keep getting these build breakages, not sure why. Looks like git is
confusing one folder for the other?
https://android-build.googleplex.com/builds/submitted/10065142/test_suites_arm64/latest/logs/build_error.log

Bug: 275409981
Test: run locally
Change-Id: I6173b9ecae5e9ab12d9abf2eee3f2136dc353210
2023-05-06 20:55:10 +00:00
Treehugger Robot
626b012556 Merge "Update sdk finalizer for change to api_levels_released_versions" 2023-05-03 17:24:31 +00:00