Python kubernetes.client.V1HostPathVolumeSource() Examples
The following are 4
code examples of kubernetes.client.V1HostPathVolumeSource().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
kubernetes.client
, or try the search function
.
Example #1
Source File: kubernetes_tools.py From paasta with Apache License 2.0 | 5 votes |
def get_pod_volumes( self, docker_volumes: Sequence[DockerVolume], aws_ebs_volumes: Sequence[AwsEbsVolume], ) -> Sequence[V1Volume]: pod_volumes = [] unique_docker_volumes = { self.get_docker_volume_name(docker_volume): docker_volume for docker_volume in docker_volumes } for name, docker_volume in unique_docker_volumes.items(): pod_volumes.append( V1Volume( host_path=V1HostPathVolumeSource(path=docker_volume["hostPath"]), name=name, ) ) unique_aws_ebs_volumes = { self.get_aws_ebs_volume_name(aws_ebs_volume): aws_ebs_volume for aws_ebs_volume in aws_ebs_volumes } for name, aws_ebs_volume in unique_aws_ebs_volumes.items(): pod_volumes.append( V1Volume( aws_elastic_block_store=V1AWSElasticBlockStoreVolumeSource( volume_id=aws_ebs_volume["volume_id"], fs_type=aws_ebs_volume.get("fs_type"), partition=aws_ebs_volume.get("partition"), # k8s wants RW volume even if it's later mounted RO read_only=False, ), name=name, ) ) return pod_volumes
Example #2
Source File: test_kubernetes_tools.py From paasta with Apache License 2.0 | 5 votes |
def test_get_pod_volumes(self): mock_docker_volumes = [ {"hostPath": "/nail/blah", "containerPath": "/nail/foo"}, {"hostPath": "/nail/thing", "containerPath": "/nail/bar"}, ] mock_aws_ebs_volumes = [ { "volume_id": "vol-zzzzzzzzzzzzzzzzz", "fs_type": "ext4", "container_path": "/nail/qux", } ] expected_volumes = [ V1Volume( host_path=V1HostPathVolumeSource(path="/nail/blah"), name="host--slash-nailslash-blah", ), V1Volume( host_path=V1HostPathVolumeSource(path="/nail/thing"), name="host--slash-nailslash-thing", ), V1Volume( aws_elastic_block_store=V1AWSElasticBlockStoreVolumeSource( volume_id="vol-zzzzzzzzzzzzzzzzz", fs_type="ext4", read_only=False ), name="aws-ebs--vol-zzzzzzzzzzzzzzzzz", ), ] assert ( self.deployment.get_pod_volumes( docker_volumes=mock_docker_volumes, aws_ebs_volumes=mock_aws_ebs_volumes ) == expected_volumes )
Example #3
Source File: deploy.py From margipose with Apache License 2.0 | 5 votes |
def _host_volume(name, path, type): return client.V1Volume( name=name, host_path=client.V1HostPathVolumeSource(path=path, type=type) )
Example #4
Source File: pipeline.py From pipelines with Apache License 2.0 | 5 votes |
def resnet_pipeline( raw_data_dir='/mnt/workspace/raw_data', processed_data_dir='/mnt/workspace/processed_data', model_dir='/mnt/workspace/saved_model', epochs=50, trtserver_name='trtis', model_name='resnet_graphdef', model_version=1, webapp_prefix='webapp', webapp_port=80 ): persistent_volume_name = 'nvidia-workspace' persistent_volume_path = '/mnt/workspace' op_dict = {} op_dict['preprocess'] = PreprocessOp( 'preprocess', raw_data_dir, processed_data_dir) op_dict['train'] = TrainOp( 'train', op_dict['preprocess'].output, model_dir, model_name, model_version, epochs) op_dict['deploy_inference_server'] = InferenceServerLauncherOp( 'deploy_inference_server', op_dict['train'].output, trtserver_name) op_dict['deploy_webapp'] = WebappLauncherOp( 'deploy_webapp', op_dict['deploy_inference_server'].output, model_name, model_version, webapp_prefix, webapp_port) for _, container_op in op_dict.items(): container_op.add_volume(k8s_client.V1Volume( host_path=k8s_client.V1HostPathVolumeSource( path=persistent_volume_path), name=persistent_volume_name)) container_op.add_volume_mount(k8s_client.V1VolumeMount( mount_path=persistent_volume_path, name=persistent_volume_name))