 Hi, my name is Salingar Asha. I work at the Austin's Medical Center and I'm also in school in the Nile Islands, and I'm one of your Galaxy administrators. Today I'll be teaching you how to set up TUS with Galaxy. TUS is a separate server that you can run within your Galaxy server that will make uploads significantly more efficient. Instead of how they normally happen, which is the upload goes to NGINX, then through to the Galaxy of processes in the background running under USG or Unicorn, which then stages them to disk. Instead, they'll go to TUS, which will write them out and then whenever it's done processing them, it'll let Galaxy know and Galaxy can import these files. Setting up is very simple, but you need to be on Galaxy 22.01. So we'll get started. Okay, so in the Galaxy training material, so in the Galaxy training material, you'll need to find performance uploads with TUS to be linked under the video as well. TUS, the first step, like most of the first steps this week, will be to add the role to your playbook or to your requirements. Your Galaxy installation folder should look about like this so far. You've got your Anciel CFG setup, your group variables, requirements. So we're gonna go edit those requirements. And at the bottom, I'm going to add in testing and write that file out. Then you can do, of course, Anciel Galaxy install, minus P rolls, minus R requirements. This will get very familiar with over the week. And it will download any of the missing rolls that you need. With that done, we're ready to configure TUS. In our group variables in Galaxy servers, we need to add TUS configuration in two places. The first place is up here in the Galaxy config. We can come down to the bottom and add in TUS there. We'll be storing the files for TUS and slash data slash TUS. We set up slash data earlier in the Ansible Galaxy tutorial. That's where all of our data's gonna be going, but we're gonna make a subfolder there for all of our TUS data. And then you can copy this giant. And we're gonna paste that down at the end. What this will do is we'll configure a TUSD port. We'll be using port 1080. And I'll configure a single instance. The name will be main. It'll be run under the Galaxy user and group to listen on port 1080. And it will upload to that data directory that we just sent in the Galaxy config. Additionally, you need to know the hostname of our server to connect everything up properly. So we'll write that out. And nearly finally, we need to set up the location in nginx, your templates nginx and galaxy.j2. We can come paste this block in pretty much anywhere. What this will do is it'll set up slash api upload resumable upload. And this has some special proxy buffering settings to disable buffering. It will set forwarding headers and pass that data on to the TUSD port that we specified. And also additionally overrides client max body size to allow upload a very large house. Almost done. You can add the TUSD role to the bottom of your code book. Make sure it is properly indented with and all of these minuses line up. And then you're ready to go. You can run Ansible Playbook Galaxy. It was really this simple. This is one of the choices of Ansible that all of the knowledge of our administrators gets written into these fantastic roles that you'll use and reuse during the week. And you get all of that essentially for free. While we're waiting for that to load, I'm going to load my Galaxy instance. Online's at Gap38.usgalaxy.training. I haven't logged into this one yet. So I still have to accept the risk and continue. Over here on the Galaxy, on the Playbook side, it looks like testing setup and running. We should be able to check data, such tests and see that there's folder there. Fantastic. We'll do system CTL status and look for test D main. It was the code name or the instance name that we specified and see that it's running. You'll note that it gives us some ports here, some, okay, it's using files, using metrics as the metrics pack. If we want to collect metrics from test, we can actually just connect to the test port, localhost, 1080s, metrics, and it'll tell us all sorts of metrics about tests, like how many times it, how many bytes it received, how many connections were open, things like this. Things that could be useful to monitor. Okay, let's upload some data sets. I'm gonna click on upload data and then paste fetch data. And I can paste in some large bytes. Doesn't really matter what content and go ahead and click start. The data set will start uploading in the background. It's going through tests. We can see that by looking at the metrics and maybe graphing for bytes received. And we'll see down here that it's received quite a few bytes. If you need to check what happens with tests, remember that the unit is called testy main and not testy. And here you can see, okay, it's accepted some files, they're being uploaded. It's hooking into Galaxy and telling it, hey, it's done, here's my file, please go collect it. And with that, you've set up plus. It's so easy. Thanks to all of these fantastic Ansible Rules, Galaxy Project puts together. And all of this is easier than ever before. All of the knowledge our administrators is getting made directly available to you. If you like this tutorial, go ahead and click down here fill out the form for us, let's know. And congratulations.