[SR-Users] define a DBURL with SLQOPS fails
Daniel-Constantin Mierla
miconda at gmail.com
Mon May 13 09:48:21 CEST 2019
Hello,
I added some examples in master branch about using -A to define tokens
with values, I noticed it was not properly documented, it has to be like:
-A TOKEN
-A 'TOKEN=val'
-A 'TOKEN="val"'
a matter of needing the value to be surrounded by the double quotes or not.
Cheers,
Daniel
On 12.05.19 22:32, David Villasmil wrote:
> This fails miserably:
>
> kamailio -f /etc/kamailio/kamailio.cfg -E \
> -A "DBURL mysql://admin:mypass@db.mydomaincom/kamailio" \
> -A "CBDBURL cb=>mysql://admin:mypass@db.mydomaincom/kamailio" \
> -A "ASGDBURL asg=>mysql://admin:mypass@db.mydomaincom/kamailio" -DDDD
>
>
> modparam("sqlops","sqlcon", CBDBURL)
>
> As does this:
>
> kamailio -f /etc/kamailio/kamailio.cfg -E \
> -A "DBURL mysql://admin:mypass@db.mydomaincom/kamailio" \
> -A "CBDBURL cb=>mysql://admin:mypass@db.mydomaincom/kamailio" \
> -A "ASGDBURL asg=>mysql://admin:mypass@db.mydomaincom/kamailio" -DDDD
>
>
> cfg
>
> modparam("sqlops","sqlcon", "CBDBURL")
> ...
> $var(rows)=$sqlrows(cb);
>
> When running:
>
> 0(27514) CRITICAL: <core> [core/cfg.y:3424]: yyerror_at(): parse
> error in config file /etc/kamailio/kamailio.cfg, line 1200, column
> 13-24: Can't get from cache: $sqlrows(cb)
>
>
> while hardcoded does work...
>
> Don't really know where to go from here... It seems sqlops just
> doesn't take a define as the dburl source
>
> Regards,
>
> David Villasmil
> email: david.villasmil.work at gmail.com
> <mailto:david.villasmil.work at gmail.com>
> phone: +34669448337
>
>
> On Sun, May 12, 2019 at 8:38 AM Daniel-Constantin Mierla
> <miconda at gmail.com <mailto:miconda at gmail.com>> wrote:
>
> Try first something like:
>
> modparam("sqlops","sqlcon","cb=>" DBURL )
>
> If doesn't work, then:
>
> modparam("sqlops","sqlcon", CBDBURL)
>
> and have -A twice, one for DBURL and another one for CBDBURL.
>
> The latest dev version (iirc) has the option to evaluate variables
> in the defines, so you can use there the environment pseudo-variables.
>
> Cheers,
> Daniel
>
> On 11.05.19 11:56, David Villasmil wrote:
>> Thanks Daniel;
>>
>> The thing is I’m trying to implement password-less starts (no
>> hardcoded password)
>>
>> So I’m querying the password on start from aws ssm and injecting
>> it as a define, like.
>>
>> Kamailio -f kamailio.cfg -A “DBURL
>> `script-than-returns-MySQL-dburl-lambda.sh`“
>>
>> Is it possible to do substrdef from the command line?
>>
>> Better yet, do you have a different. Approach to doing this?
>>
>> David
>>
>>
>>
>> On Sat, 11 May 2019 at 07:12, Daniel-Constantin Mierla
>> <miconda at gmail.com <mailto:miconda at gmail.com>> wrote:
>>
>> Hello,
>>
>> use:
>>
>> #!substdef "!DBURL!mysql://user:password@localhost/dbname!"
>>
>> The define is replacing only standalone tokens, not inside
>> string values, like you have for sqlcon.
>>
>> More docs about should be in core cookbook from wiki.
>>
>> Cheers,
>> Daniel
>>
>> On 11.05.19 02:05, David Villasmil wrote:
>>> yes that works.
>>>
>>> My problem is not with sqlops.
>>>
>>> My problem is with the DEFINE.
>>>
>>> If I define:
>>>
>>> #!define DBURL "mysql://user:password@localhost/dbname"
>>>
>>> and later:
>>>
>>> modparam("domain", "db_url", DBURL)
>>>
>>> and then:
>>>
>>> modparam("sqlops","sqlcon","cb=>mysql://user:password@localhost/dbname")
>>>
>>> Everything works properly.
>>>
>>>
>>> My problem is how to use that DEFINE on ALL instances where
>>> i need to use it.
>>> i.e.
>>>
>>> #!define DBURL "mysql://user:password@localhost/dbname"
>>> modparam("domain", "db_url", DBURL)
>>> modparam("sqlops","sqlcon","cb=>mysql://user:password@localhost/dbname")
>>>
>>> works, but;
>>>
>>> #!define DBURL ©
>>> modparam("domain", "db_url", DBURL)
>>> modparam("sqlops","sqlcon","cb=>DBURL")
>>>
>>> does NOT, since
>>> DBURL translates "mysql://user:password@localhost/dbname"
>>> (quotes included)
>>>
>>> so
>>> modparam("sqlops","sqlcon","cb=>DBURL")
>>> translates into
>>> modparam("sqlops","sqlcon","cb=>"mysql://user:password@localhost/dbname"")
>>>
>>> and that, of course, fails.
>>>
>>>
>>>
>>>
>>> Regards,
>>>
>>> David Villasmil
>>> email: david.villasmil.work at gmail.com
>>> <mailto:david.villasmil.work at gmail.com>
>>> phone: +34669448337
>>>
>>>
>>> On Sat, May 11, 2019 at 12:59 AM Sergiu Pojoga
>>> <pojogas at gmail.com <mailto:pojogas at gmail.com>> wrote:
>>>
>>> does is work like below? That's how mine is set,
>>> probably for the same reason.
>>>
>>> modparam("sqlops","sqlcon","cb=>mysql://user:password@localhost/dbname")
>>>
>>> On Fri, May 10, 2019 at 7:47 PM David Villasmil
>>> <david.villasmil.work at gmail.com
>>> <mailto:david.villasmil.work at gmail.com>> wrote:
>>>
>>> No,
>>>
>>> DBURL translates into
>>>
>>> "mysql://user:admin@dbuser/dbname"
>>>
>>> so in sqlops:
>>>
>>> modparam("sqlops","sqlcon","cb=>DBURL")
>>>
>>> translates into:
>>>
>>> modparam("sqlops","sqlcon","cb=>"mysql://user:admin@dbuser/dbname"")
>>>
>>> that works great on
>>>
>>> modparam("domain", "db_url", DBURL)
>>>
>>> because it translates into:
>>>
>>> modparam("domain",
>>> "db_url", "mysql://user:admin@dbuser/dbname")
>>>
>>>
>>>
>>> But not on the sqlops case
>>>
>>> Regards,
>>>
>>> David Villasmil
>>> email: david.villasmil.work at gmail.com
>>> <mailto:david.villasmil.work at gmail.com>
>>> phone: +34669448337
>>>
>>>
>>> On Sat, May 11, 2019 at 12:32 AM Sergiu Pojoga
>>> <pojogas at gmail.com <mailto:pojogas at gmail.com>> wrote:
>>>
>>> You've got a typo
>>>
>>> modparam("sqlops","sqlcon","cb=>DBURL")
>>>
>>> On Fri, May 10, 2019 at 7:02 PM David Villasmil
>>> <david.villasmil.work at gmail.com
>>> <mailto:david.villasmil.work at gmail.com>> wrote:
>>>
>>> Hello guys,
>>>
>>> So, i'm defining:
>>>
>>> DBURL "mysql://user:password@dbhost/dbname"
>>>
>>> and later on...
>>>
>>> modparam("sqlops","sqlcon","cb=>"DBURL)
>>>
>>> and this fails miserably..
>>>
>>> What do do on this case?
>>>
>>>
>>> Thanks all!
>>>
>>> Regards,
>>>
>>> David Villasmil
>>> email: david.villasmil.work at gmail.com
>>> <mailto:david.villasmil.work at gmail.com>
>>> phone: +34669448337
>>> _______________________________________________
>>> Kamailio (SER) - Users Mailing List
>>> sr-users at lists.kamailio.org
>>> <mailto:sr-users at lists.kamailio.org>
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>
>>> _______________________________________________
>>> Kamailio (SER) - Users Mailing List
>>> sr-users at lists.kamailio.org
>>> <mailto:sr-users at lists.kamailio.org>
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>
>>> _______________________________________________
>>> Kamailio (SER) - Users Mailing List
>>> sr-users at lists.kamailio.org
>>> <mailto:sr-users at lists.kamailio.org>
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>
>>> _______________________________________________
>>> Kamailio (SER) - Users Mailing List
>>> sr-users at lists.kamailio.org
>>> <mailto:sr-users at lists.kamailio.org>
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>
>>>
>>> _______________________________________________
>>> Kamailio (SER) - Users Mailing List
>>> sr-users at lists.kamailio.org <mailto:sr-users at lists.kamailio.org>
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
>> --
>> Daniel-Constantin Mierla -- www.asipto.com <http://www.asipto.com>
>> www.twitter.com/miconda <http://www.twitter.com/miconda> -- www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda>
>>
>> --
>> Regards,
>>
>> David Villasmil
>> email: david.villasmil.work at gmail.com
>> <mailto:david.villasmil.work at gmail.com>
>> phone: +34669448337
>
> --
> Daniel-Constantin Mierla -- www.asipto.com <http://www.asipto.com>
> www.twitter.com/miconda <http://www.twitter.com/miconda> -- www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda>
>
--
Daniel-Constantin Mierla -- www.asipto.com
www.twitter.com/miconda -- www.linkedin.com/in/miconda
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20190513/818edad4/attachment.html>
More information about the sr-users
mailing list