245
Commento: aggiornata acl
|
7558
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 2: | Linea 2: |
<<Indice>> '''BOZZA, LA PAGINA SARA' MOLTO LUNGA. PIÙ AVANTI SPEZZARLA IN SOTTOPAGINE''' = Introduzione = Questa pagina contiene informazioni utili per coloro che vogliono partecipare allo sviluppo e al mantenimento del codice di chiedi.ubuntu-it.org = Come si fa = I passi sono: * Installare OSQA sul proprio computer; * Ottenere il nostro codice; * HACK! * Mandaci le tue modifiche. = Prerequisiti = * Consigliato l'uso di Ubuntu 11.10 o Ubuntu 12.04 in quanto contengono i pacchetti necessari e nella giusta versione. * Installare i seguenti pacchetti relativi a django, apache, database postgresql, subverson, bazar, gettext: {{{ sudo apt-get install python-django python-django-south python-django-openid-auth python-django-debug-toolbar python-migrate python-html5lib python-markdown python-elementtidy python-psycopg2 postgresql-9.1 libapache2-mod-wsgi subversion bzr gettext }}} = Database = Assumiamo che l'utente proprietario del database sia ''postgresql''. * Configurare correttamente i permessi di postgresql modificando il file /etc/postgresql/9.1/main/pg_hba.conf, sostituendo le ultime righe con questo: {{{ # "local" is for Unix domain socket connections only host all all 192.168.1.20 255.255.255.0 md5 # <- 192.168.1.20 ip tua macchina local all all peer # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. #local replication postgres peer #host replication postgres 127.0.0.1/32 md5 #host replication postgres ::1/128 md5 }}} * Impostare la password dell'utente ''postgres'': {{{ sudo su postgres psql -d template1 -U postgres alter user postgres with password 'la_tua_password'; \q }}} * Creare il database ''osqa'' con proprietario ''postgres'': {{{ createdb -O postgres osqa exit }}} = Apache = Assumiamo che il Virtual Host si chiami ''osqa'' e che la directory di installazione sia ''/var/www/osqa''. * Assicurarsi di avere abilitato il modulo wsgi: {{{ sudo a2enmod wsgi }}} * Copiare il seguente Virtual Host in ''/etc/apache2/sites-available/'' chiamandolo ''osqa'': {{{ WSGISocketPrefix ${APACHE_RUN_DIR} <VirtualHost *:80> DocumentRoot /var/www/osqa/ ServerName http://localhost ServerAlias http://localhost Alias /osqa/m/ "/var/www/osqa/forum/skins/" <Directory "/var/www/osqa/forum/skins"> Order allow,deny Allow from all </Directory> Alias /osqa/upfiles/ "/var/www/osqa/forum/upfiles/" <Directory "/var/www/osqa/forum/upfiles"> Order deny,allow Allow from all </Directory> Alias /admin_media/ /usr/lib/python2.7/dist-packages/django/contrib/admin/media/ <Directory /usr/lib/python2.7/dist-packages/django/contrib/admin/media> Order allow,deny Allow from all </Directory> WSGIScriptAlias / /var/www/osqa/osqa.wsgi CustomLog ${APACHE_LOG_DIR}/osqa.access.log common ErrorLog ${APACHE_LOG_DIR}/osqa.error.log </VirtualHost> }}} * Abilitare il virtualhost e riavviare il servizio: {{{ sudo a2ensite osqa sudo service apache2 restart }}} = Deploy = * Scaricare il branch di sviluppo di Chiedi Ubuntu-it e copiarlo poi in `/var/www`: {{{ bzr branch lp:~ubuntu-it-ask/ubuntu-it-ask/dev }}} * Rinominare la cartella `/var/www/dev` in `/var/www/osqa` (nota bene: la cartella DEVE chiamarsi per forza ''osqa''). * Rinominare osqa.wsgi.dist in osqa.wsgi, quindi cambiare i path: {{{ sys.path.append('/var/www') sys.path.append('/var/www/osqa') }}} * modificare settings_local.py affinché rifletta la reale configurazione della propria macchina. A titolo di esempio: {{{ DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'osqa', 'USER': 'postgres', 'PASSWORD': 'la_password_dell'utente_postgres', 'HOST': 'localhost', 'PORT': '', } } APP_URL = 'http://localhost' OSQA_DEFAULT_SKIN = 'light' ## <-- è il tema di ubuntu-it, quello predefinito si chiama default }}} * Popolare il database (comandi da dare in /var/www/osqa): {{{ sudo python manage.py syncdb --all (dire no alla richiesta di creare un super utente) sudo python manage.py migrate forum --fake }}} * Generare le ultime traduzioni (sempre da /var/www/osqa): {{{ cp locale/it/LC_MESSAGES/it.po locale/it/LC_MESSAGES/django.po msgfmt locale/it/LC_MESSAGES/django.po -o locale/it/LC_MESSAGES/django.mo sudo python manage.py makemessages -l it }}} Nota sulle traduzioni: in realtà la traduzione più aggiornata è sempre [[http://bazaar.launchpad.net/~ubuntu-it-ask/ubuntu-it-ask/stable/view/head:/locale/it/LC_MESSAGES/it.po | questa]] del ramo stabile. Per applicarla seguire gli stessi passi. = Permessi = {{{ sudo chown -R www-data:www-data /var/www/osqa sudo chmod -R g+w /var/www/osqa/forum/upfiles sudo chmod -R g+w /var/www/osqa/log }}} = Prova = Riavviare apache e postgres, per sicurezza per l'ultima volta e andare su http://localhost. Dovrebbe funzionare. = Un passo in più = Non indispensabile, ma se si volesse utilizzare la medesima configurazione in uso su chiedi.ubuntu-it.org: * Fare un backup della tabella di configurazione: {{{ pg_dump osqa --clean -O -t forum_keyvalue -f mia_tabella.sql -U postgres -W }}} * Importare il [[http://wiki.ubuntu-it.org/GruppoAsk/Hack?action=AttachFile&do=get&target=forum_keyvalue.sql|seguente file]] in questo modo: {{{ psql -U postgres osqa -W < forum_keyvalue.sql }}} * Sync db: {{{ sudo python /var/www/osqa/manage.py syncdb }}} = Hack! = E adesso? Abbiamo dei [[https://bugs.launchpad.net/ubuntu-it-ask|bug]] e delle cose che [[https://blueprints.launchpad.net/ubuntu-it-ask/+spec/ubuntu-it-ask-q|vorremmo realizzare]]. Se hai un idea vieni in [[http://liste.ubuntu-it.org/cgi-bin/mailman/listinfo/admin-ask|lista]], dicci cosa vuoi fare e... falla! = Faccelo vedere = * Assicurati di avere scaricato l'ultima revisione del nostro [[https://code.launchpad.net/~ubuntu-it-ask/ubuntu-it-ask/dev|repository]] * Applica le modifiche * Quindi: {{{ bzr commit -m 'Descrivi le modifiche' bzr push lp:~tuonome/ubuntu-it-ask/tuo-repository }}} Ti server una mano? Vieni in [[http://liste.ubuntu-it.org/cgi-bin/mailman/listinfo/admin-ask|lista]]! = Per chi vuole studiare = * Non conosci bazaar? * [[http://doc.bazaar.canonical.com/bzr.dev/en/mini-tutorial/index.html|Mini tutorial]] * [[http://wiki.bazaar.canonical.com/Scenarios|Casi d'uso]] * [[http://doc.bazaar.canonical.com/bzr.dev/en/|Guida ufficiale completa]] *Non conosci Django? [[https://docs.djangoproject.com/en/1.4/|Documentazione di Django]] * Non conosci OSQA? * [[http://meta.osqa.net/|Meta ufficiale]] * [[http://wiki.osqa.net|Wiki]] |
BOZZA, LA PAGINA SARA' MOLTO LUNGA. PIÙ AVANTI SPEZZARLA IN SOTTOPAGINE
Introduzione
Questa pagina contiene informazioni utili per coloro che vogliono partecipare allo sviluppo e al mantenimento del codice di chiedi.ubuntu-it.org
Come si fa
I passi sono:
- Installare OSQA sul proprio computer;
- Ottenere il nostro codice;
- HACK!
- Mandaci le tue modifiche.
Prerequisiti
- Consigliato l'uso di Ubuntu 11.10 o Ubuntu 12.04 in quanto contengono i pacchetti necessari e nella giusta versione.
Installare i seguenti pacchetti relativi a django, apache, database postgresql, subverson, bazar, gettext:
sudo apt-get install python-django python-django-south python-django-openid-auth python-django-debug-toolbar python-migrate python-html5lib python-markdown python-elementtidy python-psycopg2 postgresql-9.1 libapache2-mod-wsgi subversion bzr gettext
Database
Assumiamo che l'utente proprietario del database sia postgresql.
Configurare correttamente i permessi di postgresql modificando il file /etc/postgresql/9.1/main/pg_hba.conf, sostituendo le ultime righe con questo:
# "local" is for Unix domain socket connections only host all all 192.168.1.20 255.255.255.0 md5 # <- 192.168.1.20 ip tua macchina local all all peer # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. #local replication postgres peer #host replication postgres 127.0.0.1/32 md5 #host replication postgres ::1/128 md5
Impostare la password dell'utente postgres:
sudo su postgres psql -d template1 -U postgres alter user postgres with password 'la_tua_password'; \q
Creare il database osqa con proprietario postgres:
createdb -O postgres osqa exit
Apache
Assumiamo che il Virtual Host si chiami osqa e che la directory di installazione sia /var/www/osqa.
Assicurarsi di avere abilitato il modulo wsgi:
sudo a2enmod wsgi
Copiare il seguente Virtual Host in /etc/apache2/sites-available/ chiamandolo osqa:
WSGISocketPrefix ${APACHE_RUN_DIR} <VirtualHost *:80> DocumentRoot /var/www/osqa/ ServerName http://localhost ServerAlias http://localhost Alias /osqa/m/ "/var/www/osqa/forum/skins/" <Directory "/var/www/osqa/forum/skins"> Order allow,deny Allow from all </Directory> Alias /osqa/upfiles/ "/var/www/osqa/forum/upfiles/" <Directory "/var/www/osqa/forum/upfiles"> Order deny,allow Allow from all </Directory> Alias /admin_media/ /usr/lib/python2.7/dist-packages/django/contrib/admin/media/ <Directory /usr/lib/python2.7/dist-packages/django/contrib/admin/media> Order allow,deny Allow from all </Directory> WSGIScriptAlias / /var/www/osqa/osqa.wsgi CustomLog ${APACHE_LOG_DIR}/osqa.access.log common ErrorLog ${APACHE_LOG_DIR}/osqa.error.log </VirtualHost>
Abilitare il virtualhost e riavviare il servizio:
sudo a2ensite osqa sudo service apache2 restart
Deploy
Scaricare il branch di sviluppo di Chiedi Ubuntu-it e copiarlo poi in /var/www:
bzr branch lp:~ubuntu-it-ask/ubuntu-it-ask/dev
Rinominare la cartella /var/www/dev in /var/www/osqa (nota bene: la cartella DEVE chiamarsi per forza osqa).
Rinominare osqa.wsgi.dist in osqa.wsgi, quindi cambiare i path:
sys.path.append('/var/www') sys.path.append('/var/www/osqa')
modificare settings_local.py affinché rifletta la reale configurazione della propria macchina. A titolo di esempio:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'osqa', 'USER': 'postgres', 'PASSWORD': 'la_password_dell'utente_postgres', 'HOST': 'localhost', 'PORT': '', } } APP_URL = 'http://localhost' OSQA_DEFAULT_SKIN = 'light' ## <-- è il tema di ubuntu-it, quello predefinito si chiama default
Popolare il database (comandi da dare in /var/www/osqa):
sudo python manage.py syncdb --all (dire no alla richiesta di creare un super utente) sudo python manage.py migrate forum --fake
Generare le ultime traduzioni (sempre da /var/www/osqa):
cp locale/it/LC_MESSAGES/it.po locale/it/LC_MESSAGES/django.po msgfmt locale/it/LC_MESSAGES/django.po -o locale/it/LC_MESSAGES/django.mo sudo python manage.py makemessages -l it
Nota sulle traduzioni: in realtà la traduzione più aggiornata è sempre questa del ramo stabile. Per applicarla seguire gli stessi passi.
Permessi
sudo chown -R www-data:www-data /var/www/osqa sudo chmod -R g+w /var/www/osqa/forum/upfiles sudo chmod -R g+w /var/www/osqa/log
Prova
Riavviare apache e postgres, per sicurezza per l'ultima volta e andare su http://localhost. Dovrebbe funzionare.
Un passo in più
Non indispensabile, ma se si volesse utilizzare la medesima configurazione in uso su chiedi.ubuntu-it.org:
Fare un backup della tabella di configurazione:
pg_dump osqa --clean -O -t forum_keyvalue -f mia_tabella.sql -U postgres -W
Importare il seguente file in questo modo:
psql -U postgres osqa -W < forum_keyvalue.sql
Sync db:
sudo python /var/www/osqa/manage.py syncdb
Hack!
E adesso? Abbiamo dei bug e delle cose che vorremmo realizzare. Se hai un idea vieni in lista, dicci cosa vuoi fare e... falla!
Faccelo vedere
Assicurati di avere scaricato l'ultima revisione del nostro repository
- Applica le modifiche
Quindi:
bzr commit -m 'Descrivi le modifiche' bzr push lp:~tuonome/ubuntu-it-ask/tuo-repository
Ti server una mano? Vieni in lista!
Per chi vuole studiare
- Non conosci bazaar?
Non conosci Django? Documentazione di Django
- Non conosci OSQA?