====== Indico / KingCon 4.0 ======
Eventmanagement — Open Source Software — https://getindico.io/
Auf dem Status-Meeting am 15.08.2022 wurde beschlossen, dass der Arbeitstitel und der Produktname und überhaupt **KingCon 4.0** sein soll.
===== Dokumentation =====
Als Webseite bei TEMA: [[:projekte:kingcon_register-me.org:kingcon_4.0|Siehe hier]]
Als lose Worddatei-Sammlung im TEMA-Teams: [[https://temaag1.sharepoint.com/:f:/r/sites/METEC-ESTAD/Freigegebene%20Dokumente/Kingcon%204.0?csf=1&web=1&e=ExItJG|Siehe hier]]
===== Zugänge =====
==== Zugang Postfach und Webmailer für Tests ====
Wenn man schon mal E-Mails testet, die sich inhaltlich kaum bis gar nicht unterscheiden, und diese an eine @tema.de-Adresse gehen, dann blockt der TEMA-Exchange-Server irgendwann.
Deshalb hier eine "lokale" Lösung.
| **E-Mail-Adresse** | mail@tema-dev4.de |
| **Webmailer** | https://webmail.tema-dev4.de/ |
| **Passwort** | ''bBFx7E4B7!Y9'' |
Bitte nach abgeschlossener Testreihe auch immer wieder mal das Postfach leeren! \\ Danke!
===== Zusatzinformationen =====
===== Knusatzinformationen =====
==== was so alles im WSL zu starten ist ====
=== Dienste, die im WSL zu starten sind (sudo ~/dev/indico/services): ===
cd ~/dev/indico
./maildump/bin/maildump -p /tmp/maildump.pid
sudo service postgresql start
sudo service redis-server start
sudo service nginx start
=== Indico und Node-Server: ===
cd ~/dev/indico
source ./env/bin/activate
indico run -h 127.0.0.1 -p 8000 -q --enable-evalex --url https://indico.dos-fire.de --proxy
in einer zweiten Shell (für die grafische Oberfläche von Richard / PlugIn "Invoice-Manager")
cd ~/dev/indico/invoice-manager
npm run dev
Eventuell muss noch auf node Version 18 umgeschaltet werden ( //''nvm use 18''// )?
=== Assets bauen oder neu bauen: ===
cd ~/dev/indico
source ./env/bin/activate
./src/bin/maintenance/build-assets.py indico --dev --watch
# bei den Plugins:
./src/bin/maintenance/build-assets.py plugin --dev plugins/tema/abstract_status
Eventuell zum Bauen der Indico-Assets
nvm use 16
=== die Entwicklungsumgebung nutzen: ===
**INDICO:** https://indico.dos-fire.de/ bzw. ** https://indico.dos-fire.de/event/2/ ** \\ **Maildummies:** http://127.0.0.1:1080/ \\ **pgAdmin:** http://localhost:8088/pgadmin4/
==== Config-Datei(en) ====
=== Indico ===
**''~/dev/indico/src/indico/indico.conf''** | die Werte: https://docs.getindico.io/en/stable/config/settings/
=== Nginx ===
**''/etc/nginx/nginx.conf''** bzw. konkret fürs Indico+Node+Geflecht: **''/etc/nginx/conf.d/indico.conf''** \\ Mit ''sudo netstat -lp'' erfahren wir, was auf welchen Port lauscht und erkennen, dass auf 8010 ein/der node läuft und auf 8000 ein python=>indico.
==== SSL-Zertifikat für indico.dos-fire.de ====
Das Zertifikat holt sich **srv03** regelmäßig bei LetsEncrypt. \\ Wir müssen es uns lokal auf unseren Server holen.
Auf Server03: https://srv03.tema-hosting.de/smb/ssl-certificate/edit/id/130/certificateId/125 [ Domain >> Zertifikaten >> Erweiterte Einstellungen >> nochmal "indico.dos-fire.de" >> runterscrollen zu den Zertifikaten >> Key in *.key, crt und ca-crt in *.crt ]
Die Dateien liegen lokal in ''/etc/nginx/sites-available/dos-fire''. Nach dem Ändern: ''sudo service nginx restart''
==== neues PlugIn für die Entwicklung installieren ====
cd ~/dev/indico
source ./env/bin/activate
cd plugins/tema/DAS_NEUE
pip install -e '.[dev]'
Wenn es wesentliche Änderungen gibt, ist es sinnvoll, die Versionsnummer höher zu setzen. \\ Die Tendenz ist, die Basis an der Indico-Versionsnummer auszurichten. \\ Wo: ''**~/dev/indico/plugins/tema/DAS_GEÄNDERTE/setup.cfg**''
**Wenn sich an Tabellen etwas geändert hat:**
indico db --plugin DAS_GEÄNDERTE upgrade
**Wenn sich an den Übersetzungen etwas geändert hat:**
indico i18n compile-catalog
indico i18n compile-catalog-react
__Siehe auch:__ https://github.com/indico/indico/wiki/Internationalisation#managing-dictionaries
**Wenn neue Strings dazugekommen sind, die eventuell noch übersetzt werden müssen:**
indico i18n extract-messages
indico i18n extract-messages-js
indico i18n extract-messages-react
indico i18n update-catalog
indico i18n update-catalog-js
indico i18n update-catalog-react
npp indico/indico/translations/??_??/LC_MESSAGES/messages*.po
indico i18n compile-catalog
indico i18n compile-catalog-react
Eventuell auch die Assets neu bauen.
**Wenn in der ReactJS-Anwendungen neue Pakete genutzt werden:**
npm install
==== neues/geändertes PlugIn auf den Produktionsserver bringen ====
=== 1. zu allen PlugIns, die ich hier habe, Packages bauen (whl-Dateien) ===
Tools aus https://github.com/rtema/indico-deployment => liegen in ''**~/dev/indico/deployment**''
cd ~/dev/indico
source ./env/bin/activate
./deployment/build-package-tema-plugins.sh
cd ./deployment/docker/indico-base/packages
ls -al
=== 2. das gewünschte Package auf den Produktionsserver kopieren ===
scp -P 12035 indico_plugin_payment_invoice-3.2.1.1-py3-none-any.whl root@193.254.190.30:/opt/indico/packages/
=== 3. das Ganze auf dem Produktionsserver zum Laufen bringen ===
ssh -p 12035 root@193.254.190.30
cd /opt/indico/packages
chown indico:nginx indico_plugin_payment_invoice-3.2.1.1-py3-none-any.whl
systemctl stop indico-celery.service
su - indico
source ~/.venv/bin/activate
pip install -U packages/indico_plugin_payment_invoice-3.2.1.1-py3-none-any.whl
rm ./cache/*
touch ~/web/indico.wsgi
systemctl start indico-celery.service
__Vermutungen:__ Das "chown" für die Package-Datei scheint nicht notwendig zu sein. Celery stoppen und starten braucht man vermutlich nicht, wenn man nichts mit E-Mails ämdert.
__Logs auf Fehler überprüfen:__ **''/opt/indico/log/*.log''**
__Siehe auch:__ \\ https://teams.microsoft.com/l/channel/19%3Adf569de210d24de3a8b9e00a3af3c630%40thread.tacv2/tab%3A%3A786f08b6-ab4e-4de2-a24d-d285dbf6e4c5?groupId=20275735-651a-494c-aa07-a01441731afd&tenantId=6209a066-7d1a-47ae-affd-053e8b213866&allowXTenantAccess=false
==== Übersetzungsdateien ====
-
cd ~/dev/indico/plugins/tema
./manage-i18n.sh extract DAS_PLUGIN
./manage-i18n.sh update de_DE DAS_PLUGIN
- Dann die ''//DAS_PLUGIN///translations/de_DE/LC_MESSAGES/messages.po''-Datei bearbeiten. Insbesondere auch die "fuzzy"-Übersetzungen korrigieren.
-
./manage-i18n.sh compile de_DE DAS_PLUGIN
- Eventuell das gleiche für ''en_GB''. Zuletzt Indico neu starten.
==== Wer sucht, der findet ====
Zunächst mal muss er/sie (mit den ensprechenden Rechten) eingeloggt sein.
* "Call for Abstracts" => unter "Workflows", wenn man im Edit-Bereich eines Events ist.
* Neue Kategorien => Home / untere Menüzeile, rechts neben dem Auge
==== Wo ich raus will ====
https://realpython.com/
===== Unterprojekte =====
{{indexmenu>projekte:indico#2| js doku}}
\\
Neues Projekt anlegen: {{NEWPAGE>projekte:indico}}
==== Siehe auch ====
**[[:projekte:kingcon_register-me.org:kingcon_4.0_-_neues_event_aufsetzen|KingCon 4.0 - Neues Event aufsetzen]]**
**[[:projekte:kingcon_register-me.org:kingcon_4.0|KingCon 4.0 - Online-Dokumentation]]**
===== Kommentare =====