Age | Commit message (Collapse) | Author |
|
Change-Id: I6d26ec7a46bb16b983451ca242a0897adca08544
|
|
As an inner class it prevented access to its parent in a closure.
See http://jira.codehaus.org/browse/GROOVY-5875
Change-Id: I29e5563173f8c5fec795cbd145ae02c941b0f47b
|
|
Support for customized results and report location.
Queries the IDevice to construct a name.
Copied the flavorlib samples to flavorlibWithFailedTests and
removed the failing tests from flavorlib as it's still useful to
have as a project with no failing test.
Change-Id: Iea3f2ab0828ab93c2ace3ed41b4a5dda7554bbe3
|
|
It was starting to be a mess in there.
Change-Id: I49807fabd070326e31dd26c6e7535e50aeb0a033
|
|
Use ddmlib to run and gather the test results. The
library provides a test runner that can read the output
of the tests running on the device and generate Junit compatible
XML result reports.
This is then fed to gradle's report generator to make a standard report.
Also change the run test task to also do the install/uninstall
so that we can run tests on all connected devices in parallel.
The existing install/uninstall tasks can probably be removed.
Change-Id: I8d3baa848923a399de78dbdc7fc25d5548f56be2
|
|
This relies on a newer version of aapt that is able to
do single file crunch.
All crunching is done through a thread controlled by an executor.
Change-Id: I578f970660f152031ed1a4f4074382fcf4d7b2b8
|
|
This is not final as the on-device errors are not properly processed.
When it's final it'll get added to the check task.
This also fixes some issue with installing/uninstalling due to the
incremental changes that went in today.
Change-Id: I280a1b8c4cfd4daae99fd68e4c93e52f9b3a9c0e
|
|
Change-Id: I27bce90c5a8b05bc149b4a3d8a9a113d74b050e8
|
|
Replaces keystore attributes on build types and flavors with a
SigningKeystore object that can be accessed by reference from
those types. Eliminates the debugSigning attribute in favor
of a default debug keystore that's automatically configured
for all projects.
Change-Id: Icbfc66487e26068ae6edff8395ebc29d0d28f46c
|
|
This refactors the name and location of the build test,
and creates a new tasks to run tests that require devices.
Change-Id: Iddcfaae9c3d7a29bbb686adfe41201f3cecee78b
|
|
Change-Id: I4f9307db0607bb00258ab75d0afb446d472f04c9
|
|
Change-Id: I4d384d3c5aa2af67cbdd1f68433104e279de3c07
|
|
First a ChangeManager (and associated classes) that detects changed
files across build runs. This is to be replaced by Gradle once this
information is given to the tasks.
Then, a rewrite of ResourceMerger and ResourceSet to allow saving a
post run state, and reloading it on the next run, to allow for
incremental updates of the merged resource folder by only updating
the resources that changed, were removed or were added.
Finally a change to the BaseTask to support incremental tasks and
provide some default support that actual tasks can use or not.
The BaseTask will do some first checks to figure out if incremental
runs are supported by the class or by the current state, and
call one of two methods to do either full run or incremental run.
The MergerResourceTask is changed to use this, and its incremental
method does a bit more checking and reverts to full run when it
cannot do an incremental run.
Finally a bunch of tests to ensure this works fine.
Change-Id: I3808e2d57aa45882eaf1030e16b092ecd58d9729
|
|
|
|
Change-Id: I01fc363072b4407f70863899c80620fb22044b1f
|
|
|
|
Adds support for a versionNameSuffix attribute to the build type
which works like packageNameSuffix -- it is appended to the
version name as derived from the manifest and overridden by the
flavors.
Change-Id: Ib303f30d2253bbd2367664b826d8dc93f5f3731e
|
|
- Update the wrapper and wrapper scripts to force 1.3
- add gradle version detection to the android plugins
to make them fail if the version of gradle is not right.
- Ensure the test projects are built with the right
version.
Change-Id: Ibd2d970f9bdf98acbca54847eb493b3379532d99
|
|
|
|
This creates a merged res folder that is then fed to aapt.
Right now the merged folder does not have its image
crunched, nor is it incremental.
This means the build will be slower (previously crunching was
incremental). Next step is to change aapt to be able to crunch
single images and then make the merging itself incremental.
Details:
The processImage task is replaced by mergeResourceTask.
It is also used for library project that had to merge their
resources before bundling, so the previous copy task is removed
and the merge is done directly in the bundle folder.
The API for AndroidBuilder is changed to reflect those changes.
processResource now only takes one res folder which is meant to
be the merged one. The getResourceInputs on VariantConfig
is changed to return a list of ResourceSets (except not actual
ResourceSet since this would load the resources, so instead
a list of list of files).
Also changed build.gradle for the gradle plugin to have
the integration test first deploy the plugin locally in order
to use the right one.
Change-Id: Ide96f733be835d94518b831baee7ee77b9a61dec
|
|
Change-Id: I12988556a427ca24e8765e02310836c724e6e5dd
|
|
Also add support to build them during the plugin integration
tests and check the output.
Change-Id: I882f47f4c79d1b44c3e95b2df0f044d91508a3eb
|
|
This allows to run these long running tests, which also
require a full SDK to be run separately from the normal
unit tests.
Change-Id: I2c8a359d63b15126128467223fba541ee5cf6b9d
|
|
Also tweak the API a bit.
Change-Id: I6cb10b4d770f9054f269d600d41a24b7e2fdc2e1
|
|
Change-Id: I8686052470b71f9f61f83da360a205a2f04d5271
|
|
Change-Id: Iec8b33ae0410932aca14ef75f56afe8aff01efdf
|
|
Also add some tests for it.
Change-Id: Ibaad3dd385004c9c514aa71215526a775cbc9aaf
|
|
Change-Id: Ib4b00ac416a43ac0ea37b86dedabd7c012becf22
|
|
Move tasks under their own package, and move some stuff
under internal.
Change-Id: I23778b650dbefef882dcab786728de5336a84c46
|
|
Change-Id: I307e83395aee2be4d1cd4334b15abeb974ddf5ea
|
|
Rename TextSymbolProvier -> SymbolFileProvider
Also make AndroidDependency implement ManifestDependency
instead of ManifestProvider so that they can be passed
to AndroidBuilder.processManifest()
Change-Id: I94af6f5a45dd1a3b5130bef58a73f21c486f2987
|
|
Use an instantiator to create DSL-ready instances.
Still use a DSL overlay for a few cases where we need
to receive an array of values.
Stop using the full ProductFlavor and BuildType as inputs
This was too broad as most tasks barely use a few values
from these as actual inputs.
Moved those inputs to the Tasks themselves and
changed the AndroidBuilder to receive them (see below).
Changed AndroidBuilder to not know VariantConfig anymore
All inputs for build steps are passed to their respective
methods. This ensure that the caller knows all the inputs
and can, if needed, cache them to detect changes to
trigger rebuilds. Gradle uses this by putting
annotations on the Task fields.
Extracted some interfaces from AndroidDependency
Some tasks use a subset of AndroidDependency so
the extracted interfaces allow the tasks to receive
a custom implementation of those limited interfaces
to let the caller deal with caching the needed
values.
Split the manifest task into two.
One of project/lib and the other one for test projects
as they have different inputs.
Change-Id: I5163765fd817b8994ff4a2a973820f78c60894bd
|
|
Change-Id: Idd136dab16a0f8f798e2c09830d0f4d77824a22c
|
|
Change-Id: I2c3e4d16ee9efeb916e46428b11d2e55b8c56e00
|
|
|
|
Change-Id: Id0cf604cb17d95043d4e0286f81c2c97e86ae44f
|
|
resources -> res
javaResources -> resources
Change-Id: Ib46106f0a0f365c310ae6e19ab79394caeaca7b0
|
|
each Android library dependency is assigned its own
task to ensure the library is unzipped.
This task is set to depend on the build dependencies
of the configuration(s) that brought it in the dependency
graph.
The Prepare task for each variant is set to depend
on all the prepareLibTask needed by the dependency
graph.
Change-Id: I17829eac949c12df706d2328441fc90f9c64701d
|
|
Read dependency graph and create list of JarDependency
and AndroidDependency for each configuration.
Set Jars and AndroidDependency on each VariantConfig
object.
Add a AndroidDependency report task (called androidDependency)
The prepareDependenciesTask will prepare the same artifact
multiple time if it's used by different variants and they
are all built. This will be fixed in the next patch.
Change-Id: I4f11565c3629a54f022ecc82f81d4900ef2bd0c9
|
|
Fixed a couple of path-related issue to make it
work on Windows.
Replaced "customized" test app with "migrated" that uses
the folder structure of older projects and reconfigure
it through the source sets.
Change-Id: Ibb1e81ef7272c3ca8e766c17b5a105d69be98c51
|
|
Mostly removed "android" from the class names.
There is now:
- BasePlugin / BaseExtension
- AppPlugin / AppExtension
- LibraryPlugin / LibraryExtension
Also renamed:
- AndroidLogger -> LoggerWrapper
- BaseAndroidTask -> BaseTask
Change-Id: I9d5dfc4b3a2d3de0bc62243a81a183d89e212ebc
|
|
Change-Id: I5983d819049f3aca33c343d08e527a6c4db2c4bb
|
|
Before dex would be given the whole classpath of the
JavaCompile task.
Now it gets the list of AndroidDependency and
JarDependency that has been build from looking at the
compile dependency graph.
This allows us to filter some artifacts, like
the android.jar artifact and its dependencies.
Change-Id: I90cd911451a0df0df2873eda152a69eda715d239
|
|
Using the new --output-text-symbols from aapt the build
system now generates the R class for libraries manually
based on the symbols exported by the libraries and the
final values computed by aapt when using all the resource
folders.
Because only R.java is concerned, the Manifest class is
now included in the library jar file.
Also added a new test apps that uses instrumentation to
verify the build system.
Change-Id: I0e9ba124cfba729f4ab8021b440b1ac70c5d1b80
|
|
If a dependency brings in android.jar from a repository,
its version is checked against the project build target.
Ultimately we should also test it against the min sdk version.
Change-Id: I6c83449dcb82947cfebc284f75840fc9cb9d035a
|
|
This only excludes a subset, as I'm not entirely sure what needs to be excluded.
Change-Id: I82c9b6641e0954cabf2e361ce9033ff818fded94
|
|
This ensures that all transitive dependencies are visited,
so that the AndroidDependency and JarDependency information
attached to VariantConfiguration is correct.
Change-Id: Ib1074fb8f18231799cb7ff68762d1bbba11f25ef
|
|
Change-Id: Ie5996f617a4e1b370167e8635a78909f16672f6e
|
|
Change-Id: I28084b92e73a59c2105d26af37c8662953dec4c3
|
|
This allows multi-project setup to have a single
local.prop file located at the root folder instead
of one per sub project.
Change-Id: Ie815488fdf2e07cad5f348496d2d263fe633894d
|