joystream
joystream copied to clipboard
Giza integration tests: Joystream CLI: Reuploading assets flow
Preconditions:
- A running Joystream node
- A running query-node
- A running storage node which accepts channel assets and has sufficient limits set to handle the scenario
- A running distributor node which accepts channel assets and has sufficient limits set to handle the scenario
- Storage lead is hired
Optimistic flow:
- Create and initialize a member (channel owner)
- Temporarly disable storage node, for example by:
- Using a dedicated api (operator api) if possible
- Setting invalid endpoint in StorageOperatorMetadata
- Removing bucket operator
- Create a channel w/ some assets
- Expect exit with
ActionCurrentlyUnavailable
or some other exit code chosen for that scenario - Expect
Rejected content ids successfully saved to: ...
output - Verify channel and assets using query node. Expect
accepted: false
for each asset - Verify distributor node returns
Cannot download the asset from any storage node
status (503
) - Re-enable storage node (depending on how it was disabled)
- Use
content:reuploadAssets
command providing the generated file as input - Expect success
- Query node: Verify all assets are now accepted
- Distributor node: Verify all assets can be downloaded
- Optionally: Repeat steps 2-12 with other commands that can upload assets, ie.:
updateChannel
,createVideo
,updateVideo