| syntax = "proto3"; |
| |
| package cycler; |
| |
| option go_package = "go.chromium.org/chromiumos/infra/proto/go/cycler"; |
| |
| // Like it says on the tin, will run stats only. |
| message NoopEffectConfiguration {} |
| |
| // Move objects that match the configuration to another bucket + prefix. |
| // If the destination is within the configured bucket/prefix the behavior |
| // on those objects created via the move is undefined. They may or may not |
| // exist in whole or in part at the time the prefix is iterated. |
| message MoveEffectConfiguration { |
| |
| // The destination bucket for the moved objects (e.g. 'engeg-testing-bucket'). |
| string destination_bucket = 1; |
| |
| // The destination prefix for the moved objects (e.g. 'moved-files-prefix/'). |
| // Note: Prefixes are literal, and no '/' will be infered/appended. |
| string destination_prefix = 2; |
| } |
| |
| // Duplicate objects that match the configuration to another bucket + prefix. |
| // If the destination is within the configured bucket/prefix the behavior |
| // on those objects created via the duplicate is undefined. They may or may not |
| // exist in whole or in part at the time the prefix is iterated. |
| message DuplicateEffectConfiguration { |
| |
| // The destination bucket for the copied objects (e.g. 'engeg-testing-bucket'). |
| string destination_bucket = 1; |
| |
| // The destination prefix for the copied objects (e.g. 'copied-files-prefix/'). |
| // Note: Prefixes are literal, and no '/' will be infered/appended. |
| string destination_prefix = 2; |
| } |
| |
| // Change the storage class of an object in place. |
| message ChillEffectConfiguration { |
| |
| // The existing storage classes. |
| enum EnumStorageClass { |
| UNKNOWN = 0; |
| STANDARD = 1; |
| NEARLINE = 2; |
| COLDLINE = 3; |
| ARCHIVE = 4; |
| } |
| |
| // The desired destination storage class. |
| EnumStorageClass to_storage_class = 1; |
| } |
| |
| // Delete the objects that match the configuration. |
| message DeleteEffectConfiguration { } |