123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565 |
- syntax = "proto3";
- package google.cloud.osconfig.v1alpha;
- import "google/api/field_behavior.proto";
- option csharp_namespace = "Google.Cloud.OsConfig.V1Alpha";
- option go_package = "google.golang.org/genproto/googleapis/cloud/osconfig/v1alpha;osconfig";
- option java_multiple_files = true;
- option java_outer_classname = "OsPolicyProto";
- option java_package = "com.google.cloud.osconfig.v1alpha";
- option php_namespace = "Google\\Cloud\\OsConfig\\V1alpha";
- option ruby_package = "Google::Cloud::OsConfig::V1alpha";
- message OSPolicy {
-
- enum Mode {
-
- MODE_UNSPECIFIED = 0;
-
-
-
- VALIDATION = 1;
-
-
- ENFORCEMENT = 2;
- }
-
- message OSFilter {
-
-
- string os_short_name = 1;
-
-
-
-
-
- string os_version = 2;
- }
-
- message InventoryFilter {
-
- string os_short_name = 1 [(google.api.field_behavior) = REQUIRED];
-
-
-
-
-
-
-
- string os_version = 2;
- }
-
-
-
-
-
-
- message Resource {
-
- message File {
-
- message Remote {
-
-
- string uri = 1 [(google.api.field_behavior) = REQUIRED];
-
- string sha256_checksum = 2;
- }
-
- message Gcs {
-
- string bucket = 1 [(google.api.field_behavior) = REQUIRED];
-
- string object = 2 [(google.api.field_behavior) = REQUIRED];
-
- int64 generation = 3;
- }
-
- oneof type {
-
- Remote remote = 1;
-
- Gcs gcs = 2;
-
- string local_path = 3;
- }
-
-
-
-
-
- bool allow_insecure = 4;
- }
-
- message PackageResource {
-
- enum DesiredState {
-
- DESIRED_STATE_UNSPECIFIED = 0;
-
- INSTALLED = 1;
-
-
- REMOVED = 2;
- }
-
- message Deb {
-
- File source = 1 [(google.api.field_behavior) = REQUIRED];
-
-
-
-
- bool pull_deps = 2;
- }
-
-
-
- message APT {
-
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- }
-
- message RPM {
-
- File source = 1 [(google.api.field_behavior) = REQUIRED];
-
-
-
-
- bool pull_deps = 2;
- }
-
-
-
- message YUM {
-
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- }
-
-
-
- message Zypper {
-
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- }
-
-
-
- message GooGet {
-
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- }
-
- message MSI {
-
- File source = 1 [(google.api.field_behavior) = REQUIRED];
-
-
-
-
- repeated string properties = 2;
- }
-
- DesiredState desired_state = 1 [(google.api.field_behavior) = REQUIRED];
-
- oneof system_package {
-
- APT apt = 2;
-
- Deb deb = 3;
-
- YUM yum = 4;
-
- Zypper zypper = 5;
-
- RPM rpm = 6;
-
- GooGet googet = 7;
-
- MSI msi = 8;
- }
- }
-
- message RepositoryResource {
-
-
-
- message AptRepository {
-
- enum ArchiveType {
-
- ARCHIVE_TYPE_UNSPECIFIED = 0;
-
- DEB = 1;
-
- DEB_SRC = 2;
- }
-
- ArchiveType archive_type = 1 [(google.api.field_behavior) = REQUIRED];
-
- string uri = 2 [(google.api.field_behavior) = REQUIRED];
-
- string distribution = 3 [(google.api.field_behavior) = REQUIRED];
-
-
- repeated string components = 4 [(google.api.field_behavior) = REQUIRED];
-
-
- string gpg_key = 5;
- }
-
-
-
- message YumRepository {
-
-
-
-
- string id = 1 [(google.api.field_behavior) = REQUIRED];
-
- string display_name = 2;
-
- string base_url = 3 [(google.api.field_behavior) = REQUIRED];
-
- repeated string gpg_keys = 4;
- }
-
-
-
- message ZypperRepository {
-
-
-
-
- string id = 1 [(google.api.field_behavior) = REQUIRED];
-
- string display_name = 2;
-
- string base_url = 3 [(google.api.field_behavior) = REQUIRED];
-
- repeated string gpg_keys = 4;
- }
-
-
-
- message GooRepository {
-
- string name = 1 [(google.api.field_behavior) = REQUIRED];
-
- string url = 2 [(google.api.field_behavior) = REQUIRED];
- }
-
- oneof repository {
-
- AptRepository apt = 1;
-
- YumRepository yum = 2;
-
- ZypperRepository zypper = 3;
-
- GooRepository goo = 4;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- message ExecResource {
-
- message Exec {
-
- enum Interpreter {
-
- INTERPRETER_UNSPECIFIED = 0;
-
-
-
-
-
- NONE = 1;
-
-
- SHELL = 2;
-
- POWERSHELL = 3;
- }
-
- oneof source {
-
- File file = 1;
-
-
- string script = 2;
- }
-
- repeated string args = 3;
-
- Interpreter interpreter = 4 [(google.api.field_behavior) = REQUIRED];
-
-
-
-
-
-
- string output_file_path = 5;
- }
-
-
-
-
- Exec validate = 1 [(google.api.field_behavior) = REQUIRED];
-
-
-
- Exec enforce = 2;
- }
-
- message FileResource {
-
- enum DesiredState {
-
- DESIRED_STATE_UNSPECIFIED = 0;
-
- PRESENT = 1;
-
- ABSENT = 2;
-
-
- CONTENTS_MATCH = 3;
- }
-
- oneof source {
-
- File file = 1;
-
-
- string content = 2;
- }
-
- string path = 3 [(google.api.field_behavior) = REQUIRED];
-
- DesiredState state = 4 [(google.api.field_behavior) = REQUIRED];
-
-
-
-
-
-
-
-
-
-
-
-
-
- string permissions = 5;
- }
-
-
-
-
-
-
-
- string id = 1 [(google.api.field_behavior) = REQUIRED];
-
- oneof resource_type {
-
- PackageResource pkg = 2;
-
- RepositoryResource repository = 3;
-
- ExecResource exec = 4;
-
- FileResource file = 5;
- }
- }
-
-
-
-
-
-
-
-
- message ResourceGroup {
-
-
- OSFilter os_filter = 1 [deprecated = true];
-
-
-
-
-
-
-
-
-
-
-
-
-
- repeated InventoryFilter inventory_filters = 3;
-
-
- repeated Resource resources = 2 [(google.api.field_behavior) = REQUIRED];
- }
-
-
-
-
-
-
-
- string id = 1 [(google.api.field_behavior) = REQUIRED];
-
-
- string description = 2;
-
- Mode mode = 3 [(google.api.field_behavior) = REQUIRED];
-
-
-
-
-
-
-
-
- repeated ResourceGroup resource_groups = 4 [(google.api.field_behavior) = REQUIRED];
-
-
-
-
- bool allow_no_resource_group_match = 5;
- }
|