1 Assets 2 ====== 3 4 This directory contains tooling for managing assets used by the bots. The 5 primary entry point is assets.py, which allows a user to add, remove, upload, 6 and download assets. 7 8 Assets are stored in Google Storage, named for their version number. 9 10 11 Individual Assets 12 ----------------- 13 14 Each asset has its own subdirectory with the following contents: 15 * VERSION: The current version number of the asset. 16 * download.py: Convenience script for downloading the current version of the asset. 17 * upload.py: Convenience script for uploading a new version of the asset. 18 * [optional] create.py: Script which creates the asset, implemented by the user. 19 * [optional] create\_and\_upload.py: Convenience script which combines create.py with upload.py. 20 21 22 Examples 23 ------- 24 25 Add a new asset and upload an initial version. 26 27 ``` 28 $ infra/bots/assets/assets.py add myasset 29 Creating asset in infra/bots/assets/myasset 30 Creating infra/bots/assets/myasset/download.py 31 Creating infra/bots/assets/myasset/upload.py 32 Creating infra/bots/assets/myasset/common.py 33 Add script to automate creation of this asset? (y/n) n 34 $ infra/bots/assets/myasset/upload.py -t ${MY_ASSET_LOCATION} 35 $ git commit 36 ``` 37 38 Add an asset whose creation can be automated. 39 40 ``` 41 $ infra/bots/assets/assets.py add myasset 42 Add script to automate creation of this asset? (y/n) y 43 $ vi infra/bots/assets/myasset/create.py 44 (implement the create_asset function) 45 $ infra/bots/assets/myasset/create_and_upload.py 46 $ git commit 47 ``` 48