def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice( args.id, registry=args.registry, region=args.region) return client.Get(device_ref)
def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice(args.device, registry=args.registry, region=args.region) data = util.ReadConfigData(args) return client.ModifyConfig(device_ref, data, args.version_to_update)
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() data = util.ReadConfigData(args) response = client.ModifyConfig(device_ref, data, args.version_to_update) log.UpdatedResource(device_ref.Name(), 'configuration for device') return response
def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice(args.device, registry=args.registry, region=args.region) console_io.PromptContinue( message='This will delete ALL CREDENTIALS for device [{}]'.format( device_ref.Name()), cancel_on_no=True) return client.Patch(device_ref, credentials=[])
def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice(args.id, registry=args.registry, region=args.region) response = client.Delete(device_ref) log.DeletedResource(device_ref.Name(), 'device') return response
def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice(args.id, registry=args.registry, region=args.region) enabled_state = util.ParseEnableDevice(args.enable_device, client=client) return client.Patch( device_ref, enabled_state=enabled_state)
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() console_io.PromptContinue( message='This will delete ALL CREDENTIALS for device [{}]'.format( device_ref.Name()), cancel_on_no=True) response = client.Patch(device_ref, credentials=[]) log.status.Print('Cleared all credentials for device [{}].'.format( device_ref.Name())) return response
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() metadata = util.ParseMetadata(args.metadata, args.metadata_from_file, client.messages) device = client.Patch(device_ref, blocked=args.blocked, metadata=metadata) log.UpdatedResource(device_ref.Name(), 'device') return device
def ParseEnableDevice(enable_device, client=None): if enable_device is None: return None client = client or devices.DevicesClient() enabled_state_enum = client.enabled_state_enum if enable_device is True: return enabled_state_enum.DEVICE_ENABLED elif enable_device is False: return enabled_state_enum.DEVICE_DISABLED else: raise ValueError('Invalid value for [enable_device].')
def Run(self, args): """Run the list command.""" client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() device = client.Get(device_ref) for idx, credential in enumerate(device.credentials): serializable = resource_projector.MakeSerializable(credential) serializable['index'] = idx yield serializable
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() credentials = client.Get(device_ref).credentials try: return credentials[args.index] except IndexError: raise util.BadCredentialIndexError(device_ref.Name(), credentials, args.index)
def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice(args.id, registry=args.registry, region=args.region) blocked = util.ParseDeviceBlocked(args.blocked, args.enable_device) metadata = util.ParseMetadata(args.metadata, args.metadata_from_file, client.messages) device = client.Patch(device_ref, blocked=blocked, metadata=metadata) log.UpdatedResource(device_ref.Name(), 'device') return device
def Run(self, args): """Run the list command.""" client = devices.DevicesClient() registry_ref = args.CONCEPTS.registry.Parse() return client.List(registry_ref, device_ids=args.device_ids, device_num_ids=args.device_num_ids, field_mask=['blocked', 'name'], limit=args.limit, page_size=args.page_size)
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() console_io.PromptContinue( 'You are about to delete device: [{}]'.format(device_ref.Name()), throw_if_unattended=True, cancel_on_no=True) response = client.Delete(device_ref) log.DeletedResource(device_ref.Name(), 'device') return response
def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice(args.id, registry=args.registry, region=args.region) enabled_state = util.ParseEnableDevice(args.enable_device, client=client) device = client.Patch(device_ref, enabled_state=enabled_state) log.UpdatedResource(device_ref.Name(), 'device') return device
def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice(args.device, registry=args.registry, region=args.region) credentials = client.Get(device_ref).credentials try: return credentials[args.index] except IndexError: raise util.BadCredentialIndexError(device_ref.Name(), credentials, args.index)
def Run(self, args): """Run the list command.""" client = devices.DevicesClient() registry_ref = util.ParseRegistry(args.registry, args.region) return client.List( registry_ref, device_ids=args.device_ids, device_num_ids=args.device_num_ids, field_mask=['devices.enabled_state', 'devices.name'], limit=args.limit, page_size=args.page_size)
def Run(self, args): """Run the list command.""" client = devices.DevicesClient() device_ref = util.ParseDevice(args.device, registry=args.registry, region=args.region) device = client.Get(device_ref) for idx, credential in enumerate(device.credentials): serializable = resource_projector.MakeSerializable(credential) serializable['index'] = idx yield serializable
def Run(self, args): client = devices.DevicesClient() registry_ref = util.ParseRegistry(args.registry, region=args.region) enabled_state = util.ParseEnableDevice(args.enable_device, client=client) credentials = util.ParseCredentials(args.public_keys, messages=client.messages) return client.Create(registry_ref, args.id, enabled_state=enabled_state, credentials=credentials)
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() device = client.Get(device_ref) try: data = device.config.binaryData except AttributeError: # This shouldn't happen, as the API puts in a config for each device. raise util.BadDeviceError( 'Device [{}] is missing configuration data.'.format( device_ref.Name())) return data
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() metadata = util.ParseMetadata(args.metadata, args.metadata_from_file, client.messages) log_level = util.ParseLogLevel( args.log_level, client.messages.Device.LogLevelValueValuesEnum) device = client.Patch(device_ref, blocked=args.blocked, metadata=metadata, log_level=log_level) log.UpdatedResource(device_ref.Name(), 'device') return device
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() new_credential = util.ParseCredential( args.path, args.type, args.expiration_time, messages=client.messages) credentials = client.Get(device_ref).credentials if len(credentials) >= util.MAX_PUBLIC_KEY_NUM: raise util.InvalidPublicKeySpecificationError( 'Cannot create a new public key credential for this device; ' 'maximum {} keys are allowed.'.format(util.MAX_PUBLIC_KEY_NUM)) credentials.append(new_credential) response = client.Patch(device_ref, credentials=credentials) log.CreatedResource(device_ref.Name(), 'credentials for device') return response
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() device = client.Get(device_ref) try: data = device.config.binaryData except AttributeError: # This shouldn't happen, as the API puts in a config for each device. raise util.BadDeviceError( 'Device [{}] is missing configuration data.'.format( device_ref.Name())) # Don't use --format=value(.) because we don't want the \n at the end. log.out.write(data) return data
def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice(args.device, registry=args.registry, region=args.region) credentials = client.Get(device_ref).credentials try: if args.expiration_time: credentials[args.index].expirationTime = (times.FormatDateTime( args.expiration_time)) except IndexError: raise util.BadCredentialIndexError(device_ref.Name(), credentials, args.index) return client.Patch(device_ref, credentials=credentials)
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() credentials = client.Get(device_ref).credentials try: if args.expiration_time: credentials[args.index].expirationTime = (times.FormatDateTime( args.expiration_time)) except IndexError: raise util.BadCredentialIndexError(device_ref.Name(), credentials, args.index) response = client.Patch(device_ref, credentials=credentials) log.UpdatedResource(device_ref.Name(), 'credentials for device') return response
def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice(args.device, registry=args.registry, region=args.region) credentials = client.Get(device_ref).credentials try: credential = credentials.pop(args.index) except IndexError: raise util.BadCredentialIndexError(device_ref.Name(), credentials, args.index) console_io.PromptContinue( message='This will delete the following credential: {}'.format( credential), cancel_on_no=True) return client.Patch(device_ref, credentials=credentials)
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() registry_ref = device_ref.Parent() credentials = util.ParseCredentials(args.public_keys, messages=client.messages) metadata = util.ParseMetadata(args.metadata, args.metadata_from_file, client.messages) response = client.Create(registry_ref, device_ref.devicesId, blocked=args.blocked, credentials=credentials, metadata=metadata) log.CreatedResource(device_ref.devicesId, 'device') return response
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() credentials = client.Get(device_ref).credentials try: credential = credentials.pop(args.index) except IndexError: raise util.BadCredentialIndexError(device_ref.Name(), credentials, args.index) console_io.PromptContinue( message='This will delete the following credential: {}'.format( credential), cancel_on_no=True) response = client.Patch(device_ref, credentials=credentials) log.DeletedResource(device_ref.Name(), 'credentials for device') return response
def Run(self, args): client = devices.DevicesClient() device_ref = util.ParseDevice(args.device, registry=args.registry, region=args.region) new_credential = util.ParseCredential(args.path, args.type, args.expiration_time, messages=client.messages) credentials = client.Get(device_ref).credentials if len(credentials) >= util.MAX_PUBLIC_KEY_NUM: raise util.InvalidPublicKeySpecificationError( 'Cannot create a new public key credential for this device; ' 'maximum {} keys are allowed.'.format(util.MAX_PUBLIC_KEY_NUM)) credentials.append(new_credential) return client.Patch(device_ref, credentials=credentials)
def Run(self, args): client = devices.DevicesClient() device_ref = args.CONCEPTS.device.Parse() metadata = util.ParseMetadata(args.metadata, args.metadata_from_file, client.messages) auth_method = flags.GATEWAY_AUTH_METHOD_ENUM_MAPPER.GetEnumForChoice( args.auth_method) log_level = util.ParseLogLevel( args.log_level, client.messages.Device.LogLevelValueValuesEnum) device = client.Patch(device_ref, blocked=args.blocked, metadata=metadata, auth_method=auth_method, log_level=log_level) log.UpdatedResource(device_ref.Name(), 'device') return device