def gatk_combine_variants(job, vcfs, ref_fasta, ref_fai, ref_dict, merge_option='<STR_LIT>'):
job.fileStore.logToMaster('<STR_LIT>')<EOL>inputs = {'<STR_LIT>': ref_fasta,<EOL>'<STR_LIT>': ref_fai,<EOL>'<STR_LIT>': ref_dict}<EOL>inputs.update(vcfs)<EOL>work_dir = job.fileStore.getLocalTempDir()<EOL>for name, file_store_id in inputs.iteritems():<EOL><INDENT>job.fileStore.readGlobalFile(file_store_id, os.path.join(work_dir, name))<EOL><DEDENT>command = ['<STR_LIT>', '<STR_LIT>',<EOL>'<STR_LIT>', '<STR_LIT>',<EOL>'<STR_LIT>', '<STR_LIT>',<EOL>'<STR_LIT>', merge_option]<EOL>for uuid, vcf_id in vcfs.iteritems():<EOL><INDENT>command.extend(['<STR_LIT>', os.path.join('<STR_LIT>', uuid)])<EOL><DEDENT>docker_parameters = ['<STR_LIT>', '<STR_LIT>', '<STR_LIT:none>',<EOL>'<STR_LIT>', '<STR_LIT>'.format(job.memory)]<EOL>dockerCall(job=job, workDir=work_dir,<EOL>parameters=command,<EOL>tool='<STR_LIT>',<EOL>dockerParameters=docker_parameters)<EOL>return job.fileStore.writeGlobalFile(os.path.join(work_dir, '<STR_LIT>'))<EOL>
Merges VCF files using GATK CombineVariants

:param JobFunctionWrappingJob job: Toil Job instance
:param dict vcfs: Dictionary of VCF FileStoreIDs {sample identifier: FileStoreID}
:param str ref_fasta: FileStoreID for reference genome fasta
:param str ref_fai: FileStoreID for reference genome index file
:param str ref_dict: FileStoreID for reference genome sequence dictionary file
:param str merge_option: Value for --genotypemergeoption flag (Default: 'UNIQUIFY')
                        'UNIQUIFY': Multiple variants at a single site are merged into a
                                    single variant record.
                        'UNSORTED': Used to merge VCFs from the same sample
:return: FileStoreID for merged VCF file
:rtype: str