= require and ubuntu path problem

21 views
Skip to first unread message

Sergey Korobanov

unread,
Sep 25, 2018, 7:11:10 AM9/25/18
to Tarantool discussion group (English)
Hello!
We use tarantool with ubuntu server.

I deploy application into folder

/opt/application/views/server.lua

and make symlink to /etc/tarantool/instances.enabled/server.lua

service start all o.k., but when i create lib folder and lib

/opt/application/views/lib/lib.lua

and try to use it in application via

local lib = require 'lib/lib'

server don`t start with error in logs:

Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]: Starting instance server...
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]: Start failed: /etc/tarantool/instances.enabled/server.lua:16: module 'lib/lib' not found:
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no field package.preload['lib/lib']
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file './lib/lib.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file './lib/lib/init.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file './lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '//.rocks/share/tarantool/lib/lib.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '//.rocks/share/tarantool/lib/lib/init.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/.rocks/share/tarantool/lib/lib.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/.rocks/share/tarantool/lib/lib/init.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '//.rocks/lib/tarantool/lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/.rocks/lib/tarantool/lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/var/spool/tarantool/.luarocks/share/lua/5.1/lib/lib.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/var/spool/tarantool/.luarocks/share/lua/5.1/lib/lib/init.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/var/spool/tarantool/.luarocks/share/lua/lib/lib.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/var/spool/tarantool/.luarocks/share/lua/lib/lib/init.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/local/share/tarantool/lib/lib.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/local/share/tarantool/lib/lib/init.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/share/tarantool/lib/lib.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/share/tarantool/lib/lib/init.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/local/share/lua/5.1/lib/lib.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/local/share/lua/5.1/lib/lib/init.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/share/lua/5.1/lib/lib.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/share/lua/5.1/lib/lib/init.lua'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/var/spool/tarantool/.luarocks/lib/lua/5.1/lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/var/spool/tarantool/.luarocks/lib/lua/lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/local/lib/x86_64-linux-gnu/tarantool/lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/lib/x86_64-linux-gnu/tarantool/lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/local/lib/tarantool/lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/local/lib/x86_64-linux-gnu/lua/5.1/lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/lib/x86_64-linux-gnu/lua/5.1/lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 tarantoolctl[21012]:         no file '/usr/local/lib/lua/5.1/lib/lib.so'
Sep 25 11:04:21 tarantool1-1.ssel2 systemd[1]: tara...@server.service: Main process exited, code=exited, status=1/FAILURE

lib.lua cannot be found :( :(

So, can you help me:
1. Why tarantol don`t use path './lib/lib.lua'?
2. What is "current folder" on tarantool server? I mean ./lib 
3. What is best folder to deploy application? I mean for example for apache it`s historically /var/www/sitename but where to deploy lua code for tarantool in ubuntu?

Great Thanks!
Sergey.

Alexander Turenko

unread,
Sep 27, 2018, 11:02:51 AM9/27/18
to tara...@googlegroups.com
It was answered in the telegram channel, but I'll leave the answer here too.

Use /usr/share/tarantool/myapp or /usr/local/share/tarantool/myapp and require('myapp.lib').

More related messages:

> …cwd is only part of the story. Tarantool looks for a module in set of predefined directories (including current directory) and .rocks directories in {current, parent, parent(parent), ...} directories.

> More info: RTFS (grep for 'package.loaders').

WBR, Alexander Turenko.
--
You received this message because you are subscribed to the Google Groups "Tarantool discussion group (English)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tarantool+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages