fromtypingimportListfromhera.workflowsimport(Container,Steps,Workflow,modelsasm,)def_get_container(name:str,args:List[str])->Container:"""Creates container (alpine:latest) with a mounted volume"""returnContainer(name=name,image="alpine:latest",command=["sh","-c"],args=args,volume_mounts=[m.VolumeMount(name="workdir",mount_path="/mnt/vol"),],)withWorkflow(generate_name="volumes-existing-",entrypoint="volumes-existing-example",volumes=[m.Volume(name="workdir",persistent_volume_claim={"claim_name":"my-existing-volume"})],)asw:append_to_log=_get_container("append-to-accesslog",["echo accessed at: $(date) | tee -a /mnt/vol/accesslog"])print_log=_get_container("print-accesslog",["echo 'Volume access log:'; cat /mnt/vol/accesslog"])withSteps(name="volumes-existing-example")ass:append_to_log(name="generate")print_log(name="print")