• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Assets
2======
3
4This directory contains tooling for managing assets used by the bots.  The
5primary entry point is assets.py, which allows a user to add, remove, upload,
6and download assets.
7
8Assets are stored in Google Storage, named for their version number.
9
10
11Individual Assets
12-----------------
13
14Each 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
22Examples
23-------
24
25Add a new asset and upload an initial version.
26
27```
28$ infra/bots/assets/assets.py add myasset
29Creating asset in infra/bots/assets/myasset
30Creating infra/bots/assets/myasset/download.py
31Creating infra/bots/assets/myasset/upload.py
32Creating infra/bots/assets/myasset/common.py
33Add 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
38Add an asset whose creation can be automated.
39
40```
41$ infra/bots/assets/assets.py add myasset
42Add 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