Over spring break, my personal goal was to successfully complete this entry level plugin tutorial because this would provide the information that I needed to complete my own plugin. However, it has proved to be a difficult task for me. I have been able to successfully complete everything up until you convert the plugin to a cookiecutter format. At this point, the plugin should only greet you once you start the server which would look something like:
At this point all you have done is put a python file under the .octoprint directory. This works perfectly if your plugin only consists of one file. However, the problem with leaving your plugin in this way is that it is more difficult to distribute, especially if you need multiple files. The goal is for everything to be very consistent which is why octoprint uses the cookiecutter template.
When you use the cookiecutter template, the terminal prompts you to answer some questions about your plugin and then creates a directory for you. This has worked fine for me. The trouble that I have ran into is that once you convert your plugin and restart the server, octoprint no longer recognizes your plugin. I have moved the directory that it creates inside the plugins directory, outside of the OctoPrint directory, inside the plugin manager, and I still have had no successful results. I am going to reach out to my group tomorrow to see if they have any ideas as to why it is like this. I have started from scratch (all the way with completely reinstalling octoprint) and I have still had no luck.
Once I am successful, when I start the server it will look something like:
You can see that the “Hello World” plugin shows up. You can also see that the path to the directory is /home/user/OctoPrint-HelloWorld/octoprint_helloworld (the latter two directories are completed for you by cookiecutter). I have placed the directory on my home directory as well, yet luck has not yet followed suit. Worry not, I shall prevail eventually.