Who we are

We are the developers of Plastic SCM, a full version control stack (not a Git variant). We work on the strongest branching and merging you can find, and a core that doesn't cringe with huge binaries and repos. We also develop the GUIs, mergetools and everything needed to give you the full version control stack.

If you want to give it a try, download it from here.

We also code SemanticMerge, and the gmaster Git client.

How to manage Plastic SCM licenses

Thursday, January 14, 2016 calbzam 5 Comments

As a Plastic SCM administrator, you had probably spent some time struggling with your company users activation and finding a way to assign your licenses as effective as possible.

In this blog post, we will explain you all the manage users commands and how you can benefit from them.

Starting point

When you initially install and configure your Plastic SCM server with a new license there are not active users by default. If we run the cm licenseinfo command...

> cm licenseinfo
  Plastic SCM license information:

...there will be no active users. Users get activated with the first operation they perform on the system.

If your license has enough available spots, the different users will be activated as soon as they perform a write operation in the server.

It's important to note that all the commands to manage licenses are only available if you are the server administrator user, so if you haven't configured yet your admin user, please drive to the Repositories & Workspaces view, right-click Repository server permissions and mark your user as the owner. See in detail how to do that.

Once you are the owner, you will always have the permissions to manage and reassign the Plastic SCM server licenses.

Case study

As I discussed above, the Plastic SCM users will be activated as soon as they perform write operations in the server. Every active developer will be marked as an active Plastic SCM user.

In my scenario, I have a 5 user license with 5 active developers.

Eventually, one developer leaves the company and I need to reassign his license to a new team member. I run the cm licenseinfo command to check the license information:

> cm licenseinfo
      Plastic SCM license information:
      * User-license information:
carlos                    ACTIVE
manu                      ACTIVE
miguel                    ACTIVE
luis                      ACTIVE
violeta                   ACTIVE
---------------------------------------
Licensed to: [30391]Codice Software
Expiration date: 5/15/2016 12:00:00 AM
Edition: enterprise
Total licensed users: 5
Total activated users: 5
Total available users: 0
---------------------------------------

How to reassign licenses

In order to reassign the license spot, I need to deactivate the user that is no longer active, running the cm deactivateuser command:

> cm deactivateuser luis
User luis has been successfully deactivated

Finally, I'm going to assign the released license to our new developer running the cm activateuser command:

> cm activateuser daniel
User daniel has been successfully activated 

After that, if I check the license information again, I can confirm that everything worked as expected (now luis appears as inactive):

> cm licenseinfo
      Plastic SCM license information:
      * User-license information:

carlos                    ACTIVE
manu                      ACTIVE
miguel                    ACTIVE
violeta                   ACTIVE
daniel                    ACTIVE
luis                      INACTIVE (Not licensed)

---------------------------------------
Licensed to: [30391]Codice Software
Expiration date: 5/15/2016 12:00:00 AM
Edition: enterprise
Total licensed users: 5
Total activated users: 5
Total available users: 0
---------------------------------------

Read-only users

The Plastic SCM license system allows to have read-only users. When you create a new user in Plastic, it's neither active nor inactive by default.

He is on a third state where he is able to run read-only operations such as update, diff... He will only be turned into an active user as soon as he checkins or pushes branches to the server.

This read-only state is interesting to grant access to users who need to check the system but will never commit a change.

It is also interesting as well for continuous integration (CI) systems who require read-only operations.

There's no need to purchase additional licenses for those types of users provided they never perform write operations. Otherwise the Plastic SCM server will try to activate them and a license spot will be consumed.

It's very important to highlight that as soon as the read-only user performs a write operation, he will be activated. Once a user is activated, it can only be deactivated but can't go back to the read-only mode.

Summary

In this blog post, we reviewed how to manage our Plastic SCM licenses.

We learnt some useful commands that may help you monitor your licenses and reassign them when necessary.

Finally, we learnt a trick that allowed us to avoid buying unnecessary licenses for our read only users.

Carlos Alba
I joined the Plastic product experts team back in 2013.
As a Plastic SCM product expert, I try to help teams moving from other version controls on a daily basis, decide strategies, train developers, answer questions, run benchmarks ...
I love soccer and rock music. You can reach me at @albazamanillo.

5 comments:

  1. I installed Plastic SCM server on CentOS.
    There is no "cm licenseinformation" command found. Any ideas?

    ReplyDelete
  2. I´ve edited the entry. The command is "cm licenseinfo" or "cm li".
    Thanks for your feedback!

    ReplyDelete
  3. Hm... I still cannot find "cm" command. Does it come with the package?

    I installed only "plasticscm-server-core" as my installation does not have any GUI.

    ReplyDelete
  4. Perfect! it worked as expected :)
    The only thing is that I had to execute "clconfigureclient" to change client's authentication mode.

    Thank you guys! More I use plastic, more I like it!

    Dima

    ReplyDelete