"
And you are rigth that is not really supported with DAL, but you can use
your imagination... You could use db.table.field.compute to compute a new
concatenated column formed from you 3 field and create a validator for this
column that enforce uniqueness of this field petty easy isn't it??
"

I actually thought about that as I was writing the response to you, but as
you said, it shouldn't be enough anyway... So you see, you are
sayingyourself that there is a need for PGadminIII or
phpPGadmin. And yes, it IS a matter of preference - some things are easier
to do with phphPGadmin, and my programmer is used to working with
phpMyAdmin, so
it's a work-preference - they both do mostly the same things - some things
are better done in PGadminIII but for the most part, for general use,
phpPGadmin is just fine, and it's more comfortable to have it in your
browser as you work. There is a UI for defining
multi-field-uniqunessdefinitions there, and it's just much more
productive and fun to do it that
way instead of writing SQL...

I also disagree with that not being a feature, I don't see that as an SQL
thing - if it were, it would have been supported in all relational
databases - it's a feature of PostgreSQL that exists in all of its user
interfaces. The DAL is somewhat like Microsoft's entity-framework, and a
such, it should support all database common usage patterns - especially the
useful ones.

Thanks for all your help, in any case, it's very cool what youv'e done with
this script! :)


On Thu, Jan 3, 2013 at 12:38 PM, Arnon Marcus <[email protected]> wrote:

> "
> Also, hosting a staging/prod server on your own dev computer is kind of use
> less you will run 2 VMs at the same time on the same machine (one for the
> prod/staging VM and one for your Dev machine), and you will get in trouble
> with memory soon. If you don't have a really prod server, for example ESXi
> or bare metal dedicated server, you should stick with one VM where you
> configure Nginx, etc. and you developpe with Rocket server included in
> web2py.
> "
>
> I guess I did not make myself clear enough. That is not exactly my intent,
> and that's not what we're doing.
>
> The machine I've installed the VM on, is a BOXX bare metal dedicated to
> become this server. You may ask "then why a VM at all? why not install it
> fresh as the main os?" Well, I have my reasons, but that's beside the
> point. The machine is a 64bit double-dual-core AMD with 8GB of RAM. The
> application is for intranet-use, so it's not going to have too much load
> anyways - it's going to serve up to 60 clients total at the very most -
> and mostly not all simultaneously. I don't expect it to have a problem
> running 2 VMs, I would just have to give each one around 3.5GB of RAM. You
> may then ask "then why a 64bit VM stack?" Well, future-proofing - We are
> supposed to get a newer dedicated bare-metal, which would probably have
> 16GB of RAM at least. But in any case, the 2 VMs are NOT your typical
> prod/dev configuration - it's more of a stable/nightly configuration - I
> want some of the workers to be able to QA new code by using a different
> server-instance. We DO also have a dev-environment, in each of the
> developer's machine, using the Rocket server as you said - that's on-top of
> the 2 VMs I'm planning. Another reason for having the production server
> served from a VM, is for backup reasons - it's easier/quicker to clone an
> entire VM-image with the whole stack + database, in case something goes
> wrong. Plug, we are almost a purely Microsoft-stack based shop, so I think
> it's going to be easier that way - with having all the remote-desktop
> experience super-simple, having the server logged in to the
> active-directory, etc...
>
> So then the question still remains - how do my users use this server on
> our network? Using the domain of the hosting machine as the host-address,
> doesn't work...
> So what address should they use?
>
> On Thursday, January 3, 2013 7:12:09 AM UTC-8, Richard wrote:
>
>> See below answer...
>>
>>
>> On Sun, Dec 30, 2012 at 3:55 PM, Arnon Marcus <[email protected]> wrote:
>>
>>> 10x for the info.
>>> Is there any benefit for using the server vs. the desktop flavor?
>>>
>>> About pgAdmin, I don't really understand what you mean.
>>> We have been using posgreSQL with web2py in production for almost 3
>>> years now. Using phpPgAdmin on our production was never an option -
>>> always a necessity. Maybe it's becuse we are using an outdated version
>>> of web2py, but from our experience, the DAL isn't perfect - there are many
>>> advanced features of PostgreSQL that are not supported (I can give you a
>>> list of those), so we HAVE to use some kind of interface to further
>>> customize our schema outside of web2py. I don't really see how we can do
>>> this in a dev machine and not need to do the same for the prod. machine.
>>> If they share a database, then the database is on the prod. machine -
>>> and we need phpPgAdmin. If each of them have a separate machine, then
>>> we need 2 phpPgAdmins one on each machine. As far as I know, you can't
>>> have your database installed in one machine, and have your phpPgAdmin hosted
>>> on another - in its configuration file, you have to specify the local path
>>> of the pg_dump.exe and stuff like that it needs for it's operation. And
>>> again, we need it's operation for unsupported feattures of postgreSQL in
>>> web2py.
>>> As for PgAdmin-III, well, we basically only use if when transferring
>>> our database + schema as an SQL string, from one machine to another.
>>> Somehow the same thing using phpPgAdmin doesn't take us the whole way
>>> the same way PgAdmin-III does when doing that.
>>> If we were starting a new project, I could have agreed with you - we
>>> wouldn't need phpPgAdmin AND PgAdmin-III. But since we already have a
>>> database somewhere else (meaning, outside the virtual machine I just
>>> installed thanks to you), we need PgAdmin-III for the database transferring.
>>>  And since the installation of it in ubuntu is extremely simple, and
>>> having our solution installing a default ubuntu installation of
>>> postgreSQL, I would have expected the installation of PgAdmin-II to
>>> have automatically identified the postgreSQL service/process that is
>>> running - but when I launch it, and try to "connect", it apparently doesn't
>>> find it properly. I can't seem to be able to connect to the postgreSQL 
>>> service
>>> with it. I don't see any redmine database I can connect to. I think we
>>> are confusing the database node, with the connection-string/setting for
>>> PgAdmin to find the server/service/process/**whatever...
>>>
>>>
>> I am not sure I follow you about service/process, as far as I know you
>> only need to connect to postgres, you need a ip, an user name and a
>> password. So you need to configure you connection in pgAdmin for that.
>> You may need to open access from the prod/staging server, firewall, pg_hba
>> .conf and postgresql.conf in /etc/postgresql/.../.../*
>>
>> About the last point pg_hba.conf, I prefer connect remote sever with
>> ssh, less difficult then setting up SSL with postgres, search for "ssh
>> fowarding" for that, here the command : ssh -L 
>> local-port:HOSTNAMEorIP:**distant-port
>> (http://www.debianadmin.com/**howto-use-ssh-local-and-**
>> remote-port-forwarding.html<http://www.debianadmin.com/howto-use-ssh-local-and-remote-port-forwarding.html>
>> )
>>
>>
>> About phpPgAdmin, I can't see what you can't do with pgAdmin, I tweak my
>> database as I which with pgAdmin from remote machine (my dev environnement)
>> without limit, I would not rely on phpPgAdmin for that, but it surely a
>> matter of choice. If you prefer phpPgAdmin go for it (google with the write
>> keyword should allow you to find the way you can configure nginx with php
>> support and then install phpPgAdmin).
>>
>>
>>> Any thought?
>>>
>>> And any pointers you could give me for trying to install phpPgAdmin?
>>> I was able to locate where web2py is and where redmine is. But where is
>>> nginx? How do I further configure it for php ? Any configuration file I
>>> should know aboout?
>>>
>>>
>> Google
>>
>>
>>> And what about web2py?
>>> Is it connected to postgreSQL?
>>> I guess not, because it's just the welcome application, that uses sqlite by
>>> default, right?
>>> I guess if I can connect to postgreSQL with PgAdmin, I will have found
>>> the specification I need to use in the connection string in web2py for our
>>> application (we currently use the default settings for postgreSQL connection
>>> and it works)
>>>
>>>
>> Web2py is just installed, you app should have a connection string that
>> where you define the location of your database server and user name and
>> password. I think, I should have create a web2py dummy app deployed with my
>> script :-P
>>
>>
>>> I was able to install everything smoothly on ubuntu 12.04 desktop x64
>>> with virtual box on windows 7 x64. Web2py and redmine are 
>>> loadingsuccessfully locally with
>>> firefox. But how do I access them elsewhere on our intranet?
>>>
>>
>> That mean that the script if working well for you (if you can connect to
>> both site web2py welcome and redmine)... About the intranet, I don't really
>> understand... I presume that you have deploy a virtual machine on you own
>> desktop computer, if so, and regarding your next sentence and the 10.0.2.15
>> ip address you mention, I think you should use bridged networking (easier
>> solution to allow internet connection to a VM with VB) interface in you
>> network VirtualBox machine this way all the VM you host on this computer
>> will use the network card (the one of you computer) and get each a IP
>> address. That is far from the purpose of this script. And you maybe need a
>> syst admin if you don't know how to do this kind of stuff your self. Also,
>> hosting a staging/prod server on your own dev computer is kind of use less
>> you will run 2 VMs at the same time on the same machine (one for the
>> prod/staging VM and one for your Dev machine), and you will get in trouble
>> with memory soon. If you don't have a really prod server, for example ESXi
>> or bare metal dedicated server, you should stick with one VM where you
>> configure Nginx, etc. and you developpe with Rocket server included in
>> web2py.
>>
>> Richard
>>
>>
>>  I tries "ifcondif" in the reminal, and got a 10.0.2.15 ip adress...
>>> That's not usefull, I guess... I'll admit I am a nube at linux and
>>> virtual machines stuff... Would appreciate any pointers you could give
>>> me...
>>>
>>>
>>> On Sun, Dec 30, 2012 at 10:36 AM, Richard Vézina 
>>> <[email protected]>wrote:
>>>
>>>> Arnon,
>>>>
>>>> I test it with 12.04 server 64 bit under VirtualBox with windows 7 64
>>>> bit as guest and it works fine. It surely work under ubuntu desktop, but
>>>> not tested. The purpose of the script is to deploy rapidly a new prod/stage
>>>> server with basic configuration that you can tweaks for your needs later.
>>>> Since you don't really require Nginx for develppment it make no sens to
>>>> install pgAdmin on the staging/prod server, you generally install it on
>>>> your dev system. You can install phpPGAdmin if you want, but when I try it
>>>> (very longtime ago, may have change) it was not the same quality of
>>>> phpmyadmin, just for you to know that. I let you find your way to install
>>>> it (google...).
>>>>
>>>> Default postgres database name is redmine and user name for redemine is
>>>> redmine and the password is the one you enter when the script ask for it.
>>>>
>>>> You can, try it with 12.10, but I prefer 12.04 since it LTS and I don't
>>>> want to setup new environnement in less than a year.
>>>>
>>>> Richard
>>>>
>>>>
>>>> On Sun, Dec 30, 2012 at 1:26 PM, Richard Vézina 
>>>> <[email protected]>wrote:
>>>>
>>>>> I will be glad, if you want to...
>>>>>
>>>>> :)
>>>>>
>>>>> Richard
>>>>>
>>>>>
>>>>> On Fri, Dec 28, 2012 at 11:12 PM, Massimo Di Pierro <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Would you suggest we include it in web2py/scripts/?
>>>>>>
>>>>>>
>>>>>> On Friday, 28 December 2012 14:17:12 UTC-6, Richard wrote:
>>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> This is a new year gift for the one who would use Redmine beside
>>>>>>> web2py...
>>>>>>>
>>>>>>> :)
>>>>>>>
>>>>>>> The script is largely base on new Niphold web2py nginx deployment
>>>>>>> script (https://groups.google.com/**for**um/?fromgroups=#!searchin/*
>>>>>>> *web2**py/nginx$20niphold/web2py/**15J3**T35_K_w/v_t1099dIf4J<https://groups.google.com/forum/?fromgroups=#!searchin/web2py/nginx$20niphold/web2py/15J3T35_K_w/v_t1099dIf4J>
>>>>>>> ).
>>>>>>>
>>>>>>> I spend many hours write it, test it and debug Redmine, so I
>>>>>>> copyright it and distribute it under CC without commercial use.
>>>>>>>
>>>>>>> Executing it in a fresh Ubuntu 12.04 server you will get :
>>>>>>> - Latest Redmine stable (2.2.0 from http://rubyforge.org),
>>>>>>> - Rails (3.2.9 from GEM)
>>>>>>> - Ruby (ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux])
>>>>>>> (Ubuntu ruby-dev package that should correspond to the latest stable 
>>>>>>> Ruby)
>>>>>>> - working with Unicorn (latest stable from GEM),
>>>>>>> - web2py (latest stable)
>>>>>>> - uWSGI (I think latest stable), start in Emperor mode
>>>>>>> - Nginx (Ubuntu default)
>>>>>>> - PostgreSQL (Ubuntu default)
>>>>>>> - Redmine database will be installed in PostgreSQL
>>>>>>> - Self Signed SSL Certificat
>>>>>>>
>>>>>>> I try to make the script asking all the question at the beginning of
>>>>>>> the installation process just after launch it, but there is a 
>>>>>>> confirmation
>>>>>>> asked during execution where you have to choose which language to use 
>>>>>>> for
>>>>>>> the Redmine default values. Just hit enter you will get English Redmine
>>>>>>> default values.
>>>>>>>
>>>>>>> At the end of the execution, you should access your sever like this :
>>>>>>>
>>>>>>> http://IPADSRESS/
>>>>>>> # web2py Welcome should appear
>>>>>>> http://IPADSRESS/redmine
>>>>>>> # Redmine!
>>>>>>>
>>>>>>> Please report issue, submit improvement or post any comment here,
>>>>>>> and I will be glad to improve the script.
>>>>>>>
>>>>>>> Happy new year to all!
>>>>>>>
>>>>>>> Richard
>>>>>>>
>>>>>>  --
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>  --
>>>>
>>>>
>>>>
>>>>
>>>
>>>  --
>>>
>>>
>>>
>>>
>>
>>  --
>
>
>
>

-- 



Reply via email to