Stream of Consciousness

Mark Eschbach's random writings on various topics.

Trying out Taiga on k8s

Categories: programming

Tags: k8s

I am wondering if at this point I have too many irons in the fire. I feel like I need to organize and prioritize what I am working on to ensure I get the most value out of my free time. Enter the desire for an Open Source project management solution. I really love Pivotal Tracker in my personal adventures, however their limit use to be 2 projects…which I might have more of. Anyway, I have a cluster, why not use it?

Taiga looks promising. I am fighting myself flipping the ai with ia so please forgive any issues with that. Looks like a Kanban system from the screenshots. Has decent reviews.

mvitale1989 is the top recommend helm chart. So I will start with that. Looks like by default there is a lot of persistence. Primarily since the Helm Chart has an embedded copy of Postgres. Disabled via the following for test. Will look at configuration afterwards.

persistence:
  enabled: false

postgresql:
  persistence:
    enabled: false

Welp. This produced an “Oops, something went wrong” on the default service port. Time to figure out what went wrong. Looks like the console is complaining about missing resources on localhost:

angular.js:12261          GET http://localhost:8080/api/v1/stats/discover net::ERR_CONNECTION_REFUSED
angular.js:12261          GET http://localhost:8080/api/v1/projects?discover_mode=true&order_by=-total_fans_last_week net::ERR_CONNECTION_REFUSED
angular.js:12261          GET http://localhost:8080/api/v1/projects?discover_mode=true&order_by=-total_activity_last_week net::ERR_CONNECTION_REFUSED
angular.js:12261          GET http://localhost:8080/api/v1/projects?discover_mode=true&is_featured=true net::ERR_CONNECTION_REFUSED

They use Anglar! Cool! I’ve used that before. Probably looking for a knob which sets the canonical address of the service. Yup! They port-forward in the TLDR. Looks like taiga.apiserver needs to be set to that address. Values file now looks like this for testing:

persistence:
  enabled: false

postgresql:
  persistence:
    enabled: false

taiga:
  apiserver: "test.taiga.svc.workshop.k8s"

Applying this did not restart the application. I killed the pod. Worked as expected.

App is running however now it would like a user name and password. Unfortunately I have not entered one anywhere yet. So it looks like the author of the chart is using LDAP, which is fine. However I do not have that setup.

Attempting to work around the issue by using the manage.py for the backend via a shelling into the system resulted in an error around the is_staff key when running python manage.py createsuperuser.

After a bit more Googling I found a forum stating one needs to go to /admin/ using the credentials admin + 123123 to create the user. I can understand why one would use LDAP instead.

Review the Scrum project template

Interestingly the Scrum project splits various areas of work. It will then sum the work. Love they are pushing the the cross functional aspect of it. Not sure if it is correct to extract each one. Probably drives towards better estimates though, pushing values higher than 2.

Review of the Kanban board

This is honestly what I am more interested in. It’s a basic Kanban board. Not bad overall. Highly configurable. Epics are not out of the gate but configurable. Overall something I would be interested in exploring more.

Overall

From the brief “can I deploy it” view it looks reasonably promising. Probably show it to my better half since she has extensive project management experience for her own usage. For in-depth work on it later.