def testSetBinhostMismatchedKey(self): """SetBinhost rejects existing conf files with a mismatched key.""" conf_path = os.path.join(self.private_conf_dir, 'bad-key-GOOD_KEY.conf') osutils.WriteFile(conf_path, 'BAD_KEY="https://foo.bar"') with self.assertRaises(KeyError): binhost.SetBinhost('bad-key', 'GOOD_KEY', 'gs://blah')
def testSetBinhostMultilineConf(self): """SetBinhost rejects existing multiline conf files.""" conf_path = os.path.join(self.private_conf_dir, 'multi-BINHOST_KEY.conf') osutils.WriteFile(conf_path, '\n'.join(['A="foo"', 'B="bar"'])) with self.assertRaises(ValueError): binhost.SetBinhost('multi', 'BINHOST_KEY', 'gs://blah')
def testSetBinhostEmptyConf(self): """SetBinhost rejects existing but empty conf files.""" conf_path = os.path.join(self.private_conf_dir, 'multi-BINHOST_KEY.conf') osutils.WriteFile(conf_path, ' ') with self.assertRaises(ValueError): binhost.SetBinhost('multi', 'BINHOST_KEY', 'gs://blah')
def testSetBinhostPrivate(self): """SetBinhost returns correct private path and updates conf file.""" actual = binhost.SetBinhost('coral', 'BINHOST_KEY', 'gs://prebuilts') expected = os.path.join(self.private_conf_dir, 'coral-BINHOST_KEY.conf') self.assertEqual(actual, expected) self.assertEqual(osutils.ReadFile(actual), 'BINHOST_KEY="gs://prebuilts"')
def SetBinhost(input_proto, output_proto, _config): """Set the URI for a given binhost key and build target. See BinhostService documentation in api/proto/binhost.proto. Args: input_proto (SetBinhostRequest): The input proto. output_proto (SetBinhostResponse): The output proto. _config (api_config.ApiConfig): The API call config. """ target = input_proto.build_target.name key = binhost_pb2.BinhostKey.Name(input_proto.key) uri = input_proto.uri private = input_proto.private output_proto.output_file = binhost.SetBinhost(target, key, uri, private=private)
def testSetBinhhostBadConfLine(self): """SetBinhost rejects existing conf files with malformed lines.""" conf_path = os.path.join(self.private_conf_dir, 'bad-BINHOST_KEY.conf') osutils.WriteFile(conf_path, 'bad line') with self.assertRaises(ValueError): binhost.SetBinhost('bad', 'BINHOST_KEY', 'gs://blah')