ribbon

ClinkerHQ Single Sign On

As you perhaps know, ClinkerHQ includes a set of tools that can help you to manage your software development life cycle. But ClinkerHQ goes beyond that, we have developed additional pieces to make as easy as possible what is usually difficult, saving you both time and money.

One of the key parts of this “glue” is ClinkerHQ SSO Gateway. This component acts as an identity provider and authorization source inside the ecosystem. Like any advanced SSO system, ClinkerHQ SSO has four main features:

  • Authentication: Who are you?
  • Authorization: What are you allowed to do?
  • Session propagation: I already know who you are.
  • Anonymous access.

When you do login on every integrated application (Jenkins, Sonar, Redmine, etc) you will always see the same login form (it is actually the SSO Gateway login form). This is authentication:

ClinkerHQ SSO Gateway

After login you will be redirected to the original application. At this point, authorization, the second part of the SSO comes into play. Every application has an SSO plugin installed, which must do the following:

  1. Catch the incoming request
  2. Check the authentication state
  3. Get the list of permissions for the user from the SSO
  4. Set up the logged in session in the concrete application

As a result, the user only perceives that the login form is not the same as the one in the original application. But there is one other feature that you’ll love. If the user opens a new browser tab and goes to another application the logged in session will be automatically propagated; no new login (nor click on login button) is required. This is session propagation, and it is performed as part of point 1 described above. If the incoming request comes with an alive SSO session, the authorization is done automatically (without user interaction).

The Single Sign On provides ClinkerHQ users with two main benefits:

  • Work and surf on the ecosystem doing only one login.
  • Centralize the users and permissions management on one tool.

At this point, you are probably thinking “What is the management tool?” It is ClinkerHQ Desktop, and we will talk about it soon in this blog, so stay tuned!

If you want to see the SSO working, we published a video some time ago (it’s really about configuring a Scala project in ClinkerHQ, but you will perceive the SSO there).

ClinkerHQ for trainers

We’re setting up a new way to use ClinkerHQ.

Up until now, anyone who wanted to use it had two options: ClinkerHQ Cloud, a mode in which you completely forget about the infrastructure and just concentrate on developing your software projects. And on the other hand, ClinkerHQ Virtual Appliance, a virtual machine image that you deploy on your servers.

A while back, we thought it might be a good idea for trainers to be able to have tools like Git, Subversion, Nexus, Jenkins, SonarQube or Redmine suitably installed and configured, and ready to use.

Those professionally engaged in training, and anyone who has organised a training activity, know that configuring the infrastructure they need for the course or seminar is a chore. And it can get complicated if the participants need to access that infrastructure in order to practise.

Yes, we were thinking of tech professionals like you.

Mr. Israel Alcázar. Git Consultant & Trainer. Agile / Lean Consultant & Trainer

As of today, you can use ClinkerHQ Cloud to teach courses or give seminars and talks, in a way that is completely FREE. There’s only one limitation and one request. The limitation is that the instance will be available for a maximum of 7 days. And the request is that, after you use ClinkerHQ, we would love to hear your honest opinion, impressions and suggestions for any improvements through a blog post.

Are you a trainer? Use ClinkerHQ for FREE in your courses, talks or seminars.

What does a “supported stack” mean?

Our home page shows a section named “Supported stacks”, followed by a list of technology stacks. What does this mean?

When we add a supported technology stack we are saying that every tool inside ClinkerHQ is pre-configured to work with that stack, getting the best of each tool for it. You don’t have to configure or add anything.

Obviously, some tools are more coupled to the stack than others. For example, Redmine is exactly the same for Java, PHP or Ruby. On the other hand, Jenkins requires a lot of specific runtime dependencies based on the stack, because it runs builds, tests, and deploys, all of which are technology dependent.

SonarQube requires additional dependencies for different stacks, so when we say that ClinkerHQ supports Scala, it means that we have pre-configured SonarQube to analyze Scala code.

ClinkerHQ currently supports the following stacks:

  • NodeJS
  • Python
  • Java
  • PHP
  • Mac and iOS
  • Ruby
  • Android
  • C++
  • Scala

In this list there are some special stacks, like Mac and iOS, which are supported by providing a dedicated build node running over a MacOS.

Is your preferred stack missing from this list? Tell us!

Alfresco integrated with ClinkerHQ SSO

Some time ago we released the plugin which integrates Redmine and Alfresco. Now we have improved this integration with an Alfresco extension that use ClinkerHQ SSO as an identity provider for authentication.

This extension allows ClinkerHQ users to access Alfresco using their SSO username and password, so users can set up their SSO credentials in Redmine when using the Redmine CMIS Plugin too.

Alfresco configuration in Redmine

Additionally, the extension will synchronize basic user data (name, surname and email) from the SSO to Alfresco:

Alfresco user profile

If you want to know more details, or even try the Alfresco integration in ClinkerHQ, tell us!

Code inspection with kiuwan and Jenkins

ClinkerHQ includes SonarQube as a code quality manager. We now support kiuwan as well.

Kiuwan is a code quality manager that is offered as a service. It can be used from ClinkerHQ (Jenkins) since there is a Jenkins plugin available for it. We have tested the integration internally have analyzed a particular project on a daily basis for a month, and it has worked perfectly. As a result, we will include this plugin in our “validated” list of Jenkins plugins.

All that is needed for the kiuwan plugin to work on ClinkerHQ is to configure your kiuwan account:

kiuwan general configuration

Finally, configure your job to use kiuwan:

Job configuration

You will see a complete dashboard in kiuwan containing main metrics and defects, among other things:

kiuwan dashboard

kiuwan metrics view

kiuwan defects view

If you are using ClinkerHQ and wish to adopt kiuwan as your code quality manager, simply request it from us in writing. We can guide you through the configuration process if necessary.