Var in exec nodes

I am having problems passing vars into exec node. I have tried two diffrent ways. One using the vars in the command line of the exec node. I have also tried passing the whole command from a function node using msg.payload.

Where is debug from using vars within the exec node

Command failed: /usr/bin/python /home/zach/youtubeupload.py " --file " + msg.filename + " --privacyStatus unlisted --title " + msg.youtubetitle + " --description " + msg.youtubedesc + "/bin/sh: 1: Syntax error: Unterminated quoted string

Here is the debug from passing command in from the exec function.

TypeError: "file" argument must be a non-empty string

Here is the payload before it is passed into the exec node

/usr/bin/python /home/zach/youtubeupload.py --file /data/SELF/incoming/Between_the_clouds_CCBY_NatureClip.mp4 --privacyStatus unlisted --title testfullname - test-title --description 2020 SouthEast LinuxFest; test-desciption

Is the the flow

[{"id":"b2006bd1.fab5c8","type":"tab","label":"Flow 1","disabled":false,"info":""},{"id":"8b557df1.407de8","type":"function","z":"b2006bd1.fab5c8","name":"setting youtube var","func":"\nmsg.youtubetitle = \"\"+ msg.FullName +\" - \"+ msg.TalkTitle +\"\";\nmsg.youtubedesc = \"2020 SouthEast LinuxFest; \"+ msg.Talkdescription +\"\";\n\ndelete msg.topic;\ndelete msg.payload;\n\n\nreturn msg;\n\n\n","outputs":1,"noerr":0,"x":351,"y":254,"wires":[["d3f7cd35.154ad"]]},{"id":"d3f7cd35.154ad","type":"function","z":"b2006bd1.fab5c8","name":"setting youtube cmd","func":"\n\nmsg.payload = \"/usr/bin/python /home/zach/youtubeupload.py --file \" + msg.filename + \" --privacyStatus unlisted --title \" + msg.youtubetitle + \" --description \" + msg.youtubedesc + \"\"\nreturn msg;\n\n\n","outputs":1,"noerr":0,"x":524,"y":333,"wires":[["436608d3.8f5958"]]},{"id":"436608d3.8f5958","type":"exec","z":"b2006bd1.fab5c8","command":"/usr/bin/python /home/zach/youtubeupload.py","addpay":false,"append":"\" --file \" + msg.filename + \" --privacyStatus unlisted --title \" + msg.youtubetitle + \" --description \" + msg.youtubedesc + \"","useSpawn":"false","timer":"","oldrc":false,"name":"youtubeupload","x":738,"y":245,"wires":[[],[],[]]}]

Well I found the problem
I was missing the check box "append msg.payload" It was my understanding that was for the output, turns out it is for the input.