Thanks for the response. I decided to place the esxthin.conf file in
the same directory as the esxthin.pm and used the following statement
to get the full path:
"$FindBin::Bin/../lib/VCL/Module/Provisioning/esxthin.conf"
Thanks again!
Brian
Brian Bouterse
NEXT Services
919.698.8796
On Oct 13, 2009, at 10:14 AM, Andy Kurth wrote:
Brian Bouterse wrote:
While I'm working on the esxthin.pm provisioning module, I will be
using a config file placed in the same directory as esxthin.pm.
For example, in my installation this would be /opt/vcl/lib/VCL/
Module/Provisioning/esxthin.conf
1) I tried to open a file but it only works if I give it the
entire path. Is there an easy way inside a VCL perl provisioning
module to know the path of itself?
The only way I know is to use FindBin. The path that $FindBin::Bin
returns within your module can vary depending on the command that
was executed to load the module. Under normal circumstances, vcld
automatically loads your module and $FindBin::Bin returns vcld's
directory. If you call 'perl /opt/.../esxthin.pm', $FindBin::Bin
returns esxthin.pm's directory.
2) Is there an easier way to configure a username, password, and
IP for esxthin.pm to use besides using the variable table?
How about storing esxthin.conf in /etc/vcl by default? You could
also add code to your module to support a command line argument so
that the default esxthin.pm path can be overridden. This is how the
code to locate vcld.conf is written. See utils.pm near line 305.
-Andy
Thanks!
Brian
Brian Bouterse
NEXT Services
919.698.8796