In the first part, we discussed how the term “application” is often linked to end-user-focused software, leaving operational applications overlooked. This is why we began this series of articles showcasing the process of deploying the open-source Git Repository service GOGS with Napptive. If you haven’t checked the first article of the series, you can find it here.
Git and other Version control systems are an integral part of project development and management, and integrating them with sophisticated project management tools is proven to improve developer productivity and efficiency. That’s why, in this part 2 of our 3-part series, we are going to deploy Taiga, an open-source and fully-featured project management system built with event-driven microservices architecture with Rabbitmq as the message broker, and demonstrate how simple it is to deploy complex operational applications for your organization all thanks to Napptive.
Migrating Taiga to OAM
Taiga uses Docker-compose-based deployment steps and doesn’t have official support for Kubernetes yet. The good news is you can find the complete OAM definition we’ve developed to port Taiga to Kubernetes/OAM here.
We have already uploaded the application to the Napptive catalog, which is the simplest way to deploy, share, and reuse applications with only a couple of clicks!
Let’s deploy Taiga
Given that Taiga is resource intensive, your environment will require at least 2 CPU cores and 8GB of RAM to be available to deploy the application. Luckily, you can try Napptive’s PRO edition which, amongst many other features, gives you 4 CPU cores and 16Gb RAM completely free for 30 days without any commitment!
With that being said, let’s get started with the deployment procedure!
Step 1 – Login to Napptive Playground
Go to https://playground.napptive.dev and use any of the authentication methods listed to log in.
Step 2 – Select your environment
From the dropdown menu at the top left, select the appropriate environment where you want to deploy GOGS. Environments are associated with specific geographical zones, so choose the one that is closer to your final users for the best experience. For this example, we will deploy GOGS on the home lab environment, but any other environment will also work without any issues.
Step 3 – Open the Catalog to Deploy Taiga
The Napptive Catalog provides a series of ready-to-deploy applications including databases, data-scientist tools, development tools, and many more. Open the catalog through the top left-hand side icon on the sidebar, or through the Deploy app button on the top right-hand side corner. To learn more check how you can upload your own applications to the Catalog.
The next step will show you the application definition that will be deployed allowing you to customize it with your own preferences and requirements.
In the case of Taiga, there are multiple options that can be customized through the environment variables which are defined as K8s ConfigMap and secrets in this application definition. For further reference, check out the Taiga environment specifications.
Finally, click Deploy and wait for the services to get ready. It’ll take around 5 minutes for the setup to complete (even when the application state is running) while backend database migrations and configuration applications load.
Testing Taiga functionalities:
After a successful deployment of Taiga, we can start using it for our day-to-day agile workflows.
Let’s start by setting up a User
Select the Sign-up button on the top right-hand side, fill up the details, and click on the Sign-Up button.
NOTE: This option can be disabled by default by changing the ConfigMap publicRegistrationEnabledBE and publicRegistrationEnabledFE options to “False” and “false” respectively. Note the capitalization of “false” on the backend side.
On successful authentication, you’ll be redirected to the main dashboard of Taiga.
Creating projects in Taiga
Taiga being an agile project management software, it primarily provides options to create Scrum and Kanban projects by default. To create one for yourself, select the manage projects options (or create a new project) option on the dashboard.
Select the project template that you want to create and start filling in its description. Here, let’s go with the Kanban template.
Finally, click on Create Project and you’ll be redirected to the Kanban board that you’ve just created.
From here, you can create user stories, track timelines of projects and tasks, and many more.
As we can see, we have a fully working self-hosted Agile project management software up and running in just a couple of clicks.
In this article we’ve covered hosting your development infrastructure and Taiga project management software on Napptive and witnessed the ease of deploying such complex applications through the application catalog of Napptive, making deploying and maintaining your organizational applications much easier!
If you haven’t experienced Napptive yet, we invite you to sign up on the platform for absolutely free and explore how Napptive can help your organization become fully cloud-native.