xref: /aosp_15_r20/external/skia/infra/bots/assets/README.md (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard WorkerAssets
2*c8dee2aaSAndroid Build Coastguard Worker======
3*c8dee2aaSAndroid Build Coastguard Worker
4*c8dee2aaSAndroid Build Coastguard WorkerThis directory contains tooling for managing assets used by the bots.  The
5*c8dee2aaSAndroid Build Coastguard Workerprimary entry point is assets.py, which allows a user to add, remove, upload,
6*c8dee2aaSAndroid Build Coastguard Workerand download assets.
7*c8dee2aaSAndroid Build Coastguard Worker
8*c8dee2aaSAndroid Build Coastguard WorkerAssets are stored in Google Storage, named for their version number.
9*c8dee2aaSAndroid Build Coastguard Worker
10*c8dee2aaSAndroid Build Coastguard Worker
11*c8dee2aaSAndroid Build Coastguard WorkerIndividual Assets
12*c8dee2aaSAndroid Build Coastguard Worker-----------------
13*c8dee2aaSAndroid Build Coastguard Worker
14*c8dee2aaSAndroid Build Coastguard WorkerEach asset has its own subdirectory with the following contents:
15*c8dee2aaSAndroid Build Coastguard Worker* VERSION:  The current version number of the asset.
16*c8dee2aaSAndroid Build Coastguard Worker* [optional] create.py:  Script which creates the asset, implemented by the user and called by `sk asset upload`.
17*c8dee2aaSAndroid Build Coastguard Worker* [optional] create\_and\_upload.py:  User-implemented convenience script which wraps `sk asset upload` in whatever way makes sense for the asset.
18*c8dee2aaSAndroid Build Coastguard Worker
19*c8dee2aaSAndroid Build Coastguard Worker
20*c8dee2aaSAndroid Build Coastguard WorkerExamples
21*c8dee2aaSAndroid Build Coastguard Worker-------
22*c8dee2aaSAndroid Build Coastguard Worker
23*c8dee2aaSAndroid Build Coastguard WorkerAs with all uses of `sk asset`, the following will only work if you have a
24*c8dee2aaSAndroid Build Coastguard Workergoogle.com account and have authenticated with
25*c8dee2aaSAndroid Build Coastguard Worker`gcloud auth application-default login`.
26*c8dee2aaSAndroid Build Coastguard Worker
27*c8dee2aaSAndroid Build Coastguard WorkerAdd a new asset and upload an initial version.
28*c8dee2aaSAndroid Build Coastguard Worker
29*c8dee2aaSAndroid Build Coastguard Worker```
30*c8dee2aaSAndroid Build Coastguard Worker$ sk asset add myasset
31*c8dee2aaSAndroid Build Coastguard WorkerDo you want to add a creation script for this asset? (y/n): n
32*c8dee2aaSAndroid Build Coastguard Worker$ sk asset upload --in ${MY_ASSET_LOCATION} myasset
33*c8dee2aaSAndroid Build Coastguard Worker$ git commit
34*c8dee2aaSAndroid Build Coastguard Worker```
35*c8dee2aaSAndroid Build Coastguard Worker
36*c8dee2aaSAndroid Build Coastguard WorkerAdd an asset whose creation can be automated.
37*c8dee2aaSAndroid Build Coastguard Worker
38*c8dee2aaSAndroid Build Coastguard Worker```
39*c8dee2aaSAndroid Build Coastguard Worker$ sk asset add myasset
40*c8dee2aaSAndroid Build Coastguard WorkerDo you want to add a creation script for this asset? (y/n): y
41*c8dee2aaSAndroid Build Coastguard WorkerCreated infra/bots/assets/myasset/create.py; you will need to add implementation before uploading the asset.
42*c8dee2aaSAndroid Build Coastguard Worker$ vi infra/bots/assets/myasset/create.py
43*c8dee2aaSAndroid Build Coastguard Worker(implement the create_asset function)
44*c8dee2aaSAndroid Build Coastguard Worker$ sk asset upload myasset
45*c8dee2aaSAndroid Build Coastguard Worker$ git commit
46*c8dee2aaSAndroid Build Coastguard Worker```
47*c8dee2aaSAndroid Build Coastguard Worker
48*c8dee2aaSAndroid Build Coastguard WorkerUpdate an asset.
49*c8dee2aaSAndroid Build Coastguard Worker
50*c8dee2aaSAndroid Build Coastguard Worker```
51*c8dee2aaSAndroid Build Coastguard Worker(update the create.py script)
52*c8dee2aaSAndroid Build Coastguard Worker$ sk asset upload myasset
53*c8dee2aaSAndroid Build Coastguard Worker(assuming infra/bots/assets/myasset/VERSION has been updated by the previous
54*c8dee2aaSAndroid Build Coastguard Worker command, regenerate tasks.json per infra/bots/README:)
55*c8dee2aaSAndroid Build Coastguard Worker$ make -C infra/bots train
56*c8dee2aaSAndroid Build Coastguard Worker$ git commit
57*c8dee2aaSAndroid Build Coastguard Worker```
58