Redmine
Redmine wurde zum 01.06.2025 abgeschaltet
| Verantwortung | TVLuke |
| Container | redmine |
| W. Ports | keine |
| OS | Debian 10.11 |
| Server | magrathea |
| Zustand | Produktiv |
Hier findet sich die technische Dokumentation des Chaotikum Redmines. Die Nutzungshinweise finden sich hier.
Doku
Das redmine ist auf Magrathea installiert. Der Container heißt redmine.
How it works
Der Reverse-Proxy ist im Container web. Die Requests nimmt das Redmine im redmine container entgegen.
Das Redmine liegt in /srv/redmine/ (das ist aber nur ein Symlink, eigentlich liegt dort ein Ordner mit der aktuellen Version, der daneben in /srv liegt).
☝Obacht: Damit ist unsere Installation etwas anders als jene, die in vielen Tutorials beschrieben wird, die von cd /var/www/redmine ausgeht. Darauf also immer aufpassen, wenn man Tutorials oder Anleitungen nutzt und Befehle nicht unbedacht kopieren. |
|---|
LDAP Anbindung
Wir nutzen Redmines native LDAP Anbindung, welche von Administratoren eingerichtet werden kann.
In der Redmine Admin oberfläche ist die LDAP-Verbidung eingetragen. Redmine nutzt den LDAP admin account. Es scheint möglich dort einen filter einzutragen, es ist keiner Eingetragen. Laut Einstellung werden *uid*, *givenName*, *sn* und *mail* aktuel genutzt. Hier könnten aber ggf auch andere genutzt werden.
Filter:
(&(objectClass=Person)(memberOf=cn=freigeschaltet,ou=groups,dc=chaotikum,dc=org))
Plugins Installieren
Redmine unterstützt Plugins. Nicht alle Plugins unterstützen Redmine 4 darauf ist also zu achten.
Ein Plugin wird installiert, indem man es (meist als zip oder so) in den /srv/redmine/plugins/ ordner legt, dort entpackt. Dann muss man aus dem /srv/redmine/ Verzeichnis den
bundle install --without development test rmagick --no-deployment
| ☝Obacht: in den meisten Tutorials wird nicht auf rmagick verzichtet. Wir haben aber kein ImageMagick. |
|---|
Befehl aufrufen. und auch, wie beim Update von Redmine selbst
bundle exec rake redmine:plugins NAME=[PLUGIN NAME] RAILS_ENV=production
Manche Plugins sind da auch weniger spezifisch und sagen stattdessen
bundle exec rake redmine:plugins RAILS_ENV=production
Was nötig ist, hängt ggf. auch einfach vom Plugin ab oder so...
nun den Service neu starten
systemctl restart redmine
systemctl status redmine
Grundsätzliche Anleitung zur Plugin (un)instalation hier
Themes
Redmine kann mit Themes hübscher gemacht werden.
How to backup
Backup kann man wie unter diesem Link beschrieben durchführen, das heißt, die Attachments und die db müssen separat voneinander gesichert werden.
Dafür wird der Ordner /srv/redmine/files kopiert und gesichert und mit dem Befehl
/usr/bin/pg_dump -U redmine -h postgres.chaotikum.net -Fc --file=redmine.sqlc redmine
(Passwort nötig) der Datenbank Server gesichert. Das Redmine nutzt unsere Postgres-DB im Postgres Container.
How to update
Wie man Updatet beschreibt Redmine hier. Natürlich sollte man das nur nach einem Backup machen.
Update auf 4.0.3 wurde folgendermaßen gemacht:
cd /srv
wget https://www.redmine.org/releases/[AKTUELLE VERSION].tar.gz
tar -xvzf [AKTUELLE VERSION].tar.gz
Sidenote: An dieser Stelle muss man ggf ein Distro-Versionsupdate machen und vielleicht ist auch das Ruby zu alt und danach fliegt einem evtl. auch uWSGI um die Ohren. Man denke an apt install uwsgi-plugin-rack-ruby2.3 (Die version muss ggf (Wir haben keine Ahnung was hier los ist) zur Version im vendor Ordner des Redmine passen oder so... Echt, kein Plan.).
Wir haben tatsächlich kein ImageMagick, also
bundle install --without development test rmagick
Auch beim nächsten Schritt kann es zu Problemen bzgl der ruby version kommen. Das liegt an der generierten "Gemifile.lock" und der Tatsache, dass ggf mehr als ein Ruby auf dem System ist.
bundle exec rake generate_secret_token
DB Update
bundle exec rake db:migrate RAILS_ENV=production
Clear Cache
bundle exec rake tmp:cache:clear RAILS_ENV=production
nun den Symlink neu setzen auf den aktuellen Ordner aus /srv
rm redmine
ln -s redmine-[Version] redmine
nun den service neu starten
systemctl restart redmine
systemctl status redmine
das log findet sich unter
/var/log/uwsgi/app/redmine.log
Dort kann man nun ggf nachsehen, warum das nicht läuft.
Nützliche Infos
Wie geht das mit dem Rails
Um auf der Konsole mit dem Redmine zu interagieren muss man (im redmine Ordner) eine Rails-Konsole öffnen, dafür
RAILS_ENV=production bin/rails c
Dann kann man so spannende Dinge tun
User.all
User.find_by_login ('tvluke')
Admin Rechte
Auf den Container können alle Leute, die auf Magrathea können, dies ist andernorts dokumentiert. Alle diese Menschen können sich (oder anderen) über die Rails-Konsole Admin Rechte verschaffen.
Wartung
In das Textfeld einfach das Datum der Wartung eintragen, am besten in der Form yyyy-mm-dd.
[dynamischer Inhalt des Wiki-Plugins „NEWPAGE” — im Mirror nicht verfügbar]
Keine Seiten mit Tag „wartungsfenster “.
Activity Log
Wird nicht mehr ergänzt. Wartungslogs werden stattdessen genutzt.
25.09.2020
- Workaround für https://www.redmine.org/issues/32223 im Gemfile ergänzt:
# TODO: Remove the following line when #32223 is fixed
gem "sprockets", "~> 3.7.2"
- uwsgi entsorgt. Stattdessen puma manuell im Gemfile als Dependency ergänzt und über `bundle install` installiert. Damit kann jetzt das Redmine einfach über `RAILS_ENV=production bundle exec rails s -p 80` gestartet werden und genau das tut die systemd-Unit `redmine` auch:
[Unit]
Description=redmine
After=syslog.target network.target
[Service]
Type=simple
WorkingDirectory=/srv/redmine
Environment=RAILS_ENV=production
ExecStart=/usr/local/bin/bundle exec rails s -p 80
Restart=always
[Install]
WantedBy=multi-user.target
01.08.2019
- Regelmäßige Software Updates durchgeführt. Update auf 4.0.4 und Debian Buster erstmal aus Zeitgründen verschoben, beides nicht sicherheitskritisch.
02.06.2019
- Regelmäßigen update check durchgeführt. Redmine 4.0.3. ist weiterhin die neuste version, keine updates notwendig.
24.05.2019
- Die Entwickler von RedmineUp haben uns eine vorab Fix-Version des Agile Plugin geschickt, diese wurde nun installiert. Scheint soweit alles zu laufen.
19.05.2019
- Plugin PeriodicTask plugin installiert. Das wird nun getestet.
- Plugin Agile Plugin erstmal deinszaliert. Ein paar Themes installiert
- Anmerkungen
Magu würde sich wünschen das nach Möglichkeit das redmine aus Debian bezogen wird. Vorteile es gibt Updates und s würde das Upgrade erleichtern.
- Aktuelle Upstream-version 4.0.3 (2019-03-31)
- Debian 9 redmine (3.3.1-4+deb9u2)
- Debian 10 (Buster) noch keins
- Debian (Sid) redmine (4.0.1-2)
--- Martin Gummi 19.05.2019 13:21
- ISSUE Konfiguration von Projekten kann nicht aufgerufen werden
Processing by ProjectsController#settings as HTML
Parameters: {"id"=>"vorstandsarbeit"}
Current user: tvluke (id=28)
Rendering projects/settings.html.erb within layouts/base
Rendered projects/_form.html.erb (15.4ms)
Rendered projects/_edit.html.erb (17.1ms)
Rendered common/_tabs.html.erb (22.6ms)
Rendered projects/settings.html.erb within layouts/base (48.5ms)
Missing template, responding with 404: Missing partial projects/_project_color_form with {:locale=>[:de, :en], :formats=>[:html], :variants=>[], :handlers=>[:raw, :erb, :html, :builder, :ruby, :rsb]}. Searched in:
* "/srv/redmine-4.0.3/plugins/redmine_theme_changer/app/views"
* "/srv/redmine-4.0.3/plugins/redmine_agile/app/views"
* "/srv/redmine-4.0.3/app/views"
Rendering common/error.html.erb within layouts/base
Rendered common/error.html.erb within layouts/base (0.5ms)
Das Problem ist wohl https://www.redmineup.com/questions/216-agile-plugin-not-working das agile plugin muss also geupdated werden (oder weg)
- ISSUE Verschiedenste Ordner wie
/srv/redmine-4.0.3/tmpund/srv/redmine-4.0.3/fileshaben Probleme mit ihren rechten, das muss alles per hand und ist recht doof. Aber scheint zu tun. - Plugin Redmine Theme changer installiert https://github.com/haru/redmine_theme_changer/releases/tag/0.4.0
- Plugin Redmine Agile Plugin (war auch vorher installiert) wieder installiert https://www.redmineup.com/pages/help/agile
- angeblich funktioniert auch die Verbindung zu LDAP wieder.
- Gems werden nun nicht in
redmine/vendorinstalliert sondern global, sonst kann uswgi sie nicht sehen. Redmine läuft wieder. - Instalation von Redmine 4.0.3, DB Migration usw... Weiter Probleme mit uwsgi
- Dist upgrade auf 9.9
- Probleme mit uwsgi (glauben wir) zumindest kein redmine mehr
18.05.2019
- Wir haben ein Backup des Containers gemacht, weil das neue redmine eine neue ruby version braucht und das ist letztendlich kurz vor kompletter Zerstörung aller dinge
- postgres-client installiert um überhaupt backups machen zu können, diese liegen nun unter
/home/backup - Hab mal die sources.list verändert, weil er Dinge nicht gefunden hat.
Damals TM
Zustand (18.05.2019): Redmine version ist von 2015 (3.0.4), debian ist noch Version 8.