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