Plastic Cloud Edition


Welcome to Plastic Cloud Edition - the Plastic SCM hosted solution.

The purpose of this guide is to help you get up to speed with Plastic Cloud Edition and its key concepts.

This guides serves as a walkthrough to get your Plastic repositories (repos) up and running in the cloud.

What is Plastic Cloud

Plastic Cloud is the hosted Plastic SCM server solution.

We have two different Cloud products:

Plastic Cloud Edition
For teams who do not need an on-premises server. The only central location is the Cloud.
Team members can have local clones of the repositories or alternatively work directly connected to the Cloud.
Requirements: Purchase Cloud Edition (not Team + Cloud).
This guide documents this version of Plastic Cloud.
Plastic SCM Team Edition plus Cloud extension
This is a different product designed for teams who require an on-premises server (included in Team Edition) and also host repositories on the Cloud.
Requirements: Purchase Team Edition and add the Cloud Extension (not Cloud Edition).

From a user perspective, you will work with Plastic Cloud just as you do with a conventional Plastic SCM server; you will push and pull branches, create repositories, manage permissions, and so on.

Internally, Plastic Cloud uses a fully redesigned Plastic server core. The cloud core runs on several cloud roles instead of just a single computer. This means that it can be horizontally scaled by simply adding more roles (computers).

Plastic Cloud is a multi-tenant and highly scalable solution, capable of handling thousands of different organizations. It makes the best possible use of the underlying cloud infrastructure.

In practice, this means you don't have to worry about server setup or maintenance. We'll handle that for you!


Who is it for?

There are many scenarios where Plastic Cloud Edition fits. Just to mention a few:

  • You are a small team and don't want to handle any infrastructure. You're already running Plastic on your laptops but you don't want to install and administer your own Plastic server. However, you still need a central rendezvous point for the team. Plastic Cloud extension is for you.
  • You are part of a large corporate team working in several locations across the globe. You need a central server but you don't want to depend on your IT group. You can setup a Plastic Cloud organization for you and use it as your hosted central server. You would like to enforce encryption on all the data pushed to the cloud prior to sending it outside your network for maximum security.
  • You are a game development team (or any other team dealing with large repositories and huge files) and you couldn't find a suitable solution with mainstream hosting providers of version control software. Git-based solutions have the well-known 2GB repos limit. If you need more than that, Plastic Cloud is for you.

These are just 3 key scenarios, but there are many more. Some teams asked us to use the Plastic Cloud extension as a live cloud-based backup, and that's certainly an option too.


Work distributed, centralized or both

Plastic Cloud Edition is designed with fully distributed teams in mind. But, Plastic Cloud Edition also supports centralized and mixed way of working:

Working distributed:

Each developer works on their machine. Each developer has their own local Plastic SCM repo (or collection of repositories), so that checkins are always local and blazing fast.

The developers both belong to the same Plastic Cloud organization and deliver changes to Plastic Cloud through push/pull.

Plastic Cloud Edition - Working distributed
Working centralized:

The team members that don't want intermediate repositories and no push/pull actions can go for a simpler direct checkin to Plastic Cloud cycle.

This is the best option for artists in games together with Plastic Gluon. And it's also available for coders who want to work centralized with regular Plastic SCM.

Plastic Cloud Edition - Working centralized with Gluon
Plastic Cloud Edition - Working centralized with regular Plastic
Working both distributed and centralized:
Your team doesn't have to stick with one of these two ways of working—distributed or centralized. Some team members can work centralized and some others distributed.

Create a Plastic Cloud Edition organization

The organization is the way to handle different sets of repositories in the cloud. Inside the organization, you can create as many repositories as you need.

Follow one of these ways to create a Plastic Cloud Edition organization:


Create a Plastic Cloud Edition organization from the website

  1. Go to your plasticscm.com Cloud dashboard to request a Plastic Cloud Edition license.

    Or, go to plasticscm.com/plasticscm-cloud-edition and click the Subscribe now! button.

  2. A new page appears where you must enter your subscription and account information plus the following data related to the organization:

    Request a Plastic Cloud organization

    • Organization name - this is the way to identify your repos in the cloud... so choose a cool name.
    • Datacenter - select the data center that is closest to you to improve data transfer speed.
    • Encrypted data - choose if you want your data to be encrypted. Read more about the encrypted data in Plastic Cloud.
  3. The organization will generate and we'll let you know.
  4. You will be able to sign in to the Plastic Cloud :-) and start using it.

Create a Plastic Cloud Edition organization directly from the GUI

  1. Download and run the Plastic Cloud Edition installer.
  2. Follow the installation instructions (you know—next, next...):
    Plastic Cloud Edition installation
  3. Once the installation finishes, you will see the Plastic Cloud Edition welcome dialog:
    • If you already have a Plastic account, you can login to Cloud Edition by using the same login you use for plasticscm.com. So click the Login tab and enter your plasticscm.com credentials:
      Plastic Cloud Edition - Login with your plasticscm.com account
    • If you don't have a plasticscm.com account, you will need to sign up. So click the Sign up tab and create a plasticscm.com account:
      Plastic Cloud Edition - Create a plasticscm.com account
  4. Once you logged in or signed up, you are now a Plastic Cloud Edition user (and a plasticscm.com user as well).

    It's now time to create your organization. Click Create to start:

    Plastic Cloud Edition - plasticscm.com account correctly created
  5. In this new dialog, enter the following information:
    Create a Plastic Cloud organization
    • Organization name - this is the way to identify your repos in the cloud... so choose a cool name.
    • Datacenter - select the data center that is closest to you to improve data transfer speed.
    • Encrypted data - choose if you want your data to be encrypted. Read more about the encrypted data in Plastic Cloud.
  6. The organization will generate and we'll let you know.
  7. You will be able to sign in to the Plastic Cloud :-) and start using it.

Get started

Once Plastic Cloud Edition is installed, it's time to start working with your Plastic Cloud Edition organization.

When you login for the first time to Plastic Cloud Edition (by running the Plastic Cloud Edition installer), the system checks if you belong to an organization:

  • If you belong to an organization, just click Join. If you have or belong to more than one organization, a combo displays all the organizations and you must select one:
    Plastic Cloud Edition - Join an organization
  • Otherwise, you will have the chance to create an organization, as we saw previously:
    Plastic Cloud Edition - Create an organization

Once you just join or create the organization, select the tool you want to launch to work with:

  • The classic Plastic GUI for developers.
  • Gluon, the Plastic GUI for artists.
Plastic Cloud Edition - Choose your Plastic flavor

Get started with Gluon

Gluon lets you work centralized:

  • Select an existing repository to join an existing project, or create a local or a remote (cloud) repository.
  • This will create a local workspace pointing to the selected repository.
  • Plastic Cloud Edition - Get started with Gluon - Create a workspace

Get started with Plastic

  • You can Start a new project to work distributed:
    • This will create a cloud repository,
    • also a local repository is created in your machine,
    • and a workspace (working copy) under the location selected.
    • If you want to, a Sync View is created. The Sync View is a way to push and pull changes in a very comfortable way.
    Plastic Cloud Edition - Get started with Plastic - Start a new project
  • You can Join an existing Cloud Project to work distributed too:
    • This option lets you join an existing cloud repository,
    • create a local repository in your machine,
    • and a workspace (working copy) under the location selected.
    • If you want to, a Sync View is created. The Sync View is a way to push and pull changes in a very comfortable way.
    Plastic Cloud Edition - Get started with Plastic - Join Cloud project
  • Or you can Just create a workspace to work centralized:
    • Select an existing repository to join an existing project, or create a local or a remote (cloud) repository.
    • This will create a local workspace pointing to the selected repository.
    Plastic Cloud Edition - Get started with Plastic - Create a workspace

Administer your organization

Go to your Cloud dashboard

Once you get the confirmation that your organization is ready, you'll be able to access to your Cloud dashboard by logging into https://www.plasticscm.com/dashboard/cloud.

Once you login, you will enter the organizations management area. There aren't many options at this point so you'll see it is extremely simple to use.

Basically, all that you see is a list of the organizations you belong to.

If you are the administrator of an organization (we'll make you the admin when you request the organization), you'll be able to manage it.

Cloud organizations page

If you click Edit, you'll see something like this:

Edit the Cloud organization description

This is a simple page where you can edit the description of your organization.

You can click the View activity button to open a new page where you can see the usage of your entire cloud organization:

Cloud organization - Activity report

You can also click the Details link to launch a new page with the details by repository:

Cloud organization - Details



Read the following chapter to learn how and what you can manage of your Cloud organization.


Editing lock rules

By clicking the Edit lock rules button in the Cloud dashboard, you can start configuring the exclusive checkout.

The lock rules let you configure exclusive locking for binary files when you perform a checkout.

The exclusive checkout (or locking) is helpful when working with files than cannot be merged like binary files (images, video, audio...).

Using this feature, you can tell Plastic SCM what kinds of files need locking on checkout. If enabled, checking out a file will prevent other users from doing the same thing until you checkin or undo your changes. Any user can be assured that no new revisions of their checked-out files will appear while they're working on them.

The system performs the following operations:

  • Is the file locked? If so, it can't be checked out.
  • If it isn't locked, the file can be potentially locked. Plastic SCM will check whether the file name matches any of the defined lock rules. If the file name matches the rules, the file will be locked.

You can define rules than can be applied to:

  • All repositories (organization rules)
  • To specific repositories. These rules can be file extensions (such as *.xlsx, *.png or *.blend) or specific file names (such as readme.txt).

Edit lock rules

  1. To create / edit lock rules for the organization (all repositories):
    1. Enter the locking rules you want apply. You can click on the Load common lock rules button to load the most typical rules used (the ones related to binary files). You can add more rules or remove some of them.
      Edit lock rules for the organization (all repositories)
    2. To store the lock rules, click the Save button to store the lock rules.
  2. To create / edit lock rules for a specific repository:
    1. For the repository that you want to edit its lock rules, click the Add repository rules button:
      Edit lock rules for the repository
    2. A new empty field will appear under the repository name:
      Edit lock rules for the repository
    3. Enter your own rules or load the suggested common lock rules by clicking Load common lock rules. You can edit them as well.
    4. Click the Save button.

    You can remove all repository rules at any time by clicking the Clear repository rules.


Users and groups in Plastic Cloud

Plastic Cloud uses the same underlying mechanism to handle users and groups just like a regular Plastic SCM server. But, unlike Plastic SCM, instead of retrieving users and groups from LDAP, Active Directory, or a custom defined user/password file, Plastic Cloud works as follows:

  • Users are retrieved from plasticscm.com. You can invite any user to join your organization, and once they sign up to plasticscm.com, they will be valid users.
  • Groups are defined by organization. It is just like a cloud-based groups.conf defined from the organization management area. You can add invited users to the groups you create.

Cloud users and groups

You can define access policies to the cloud server for users and groups. You configure access policies by using the Plastic SCM GUI tool or the command line just like you would do with a regular server. At this point, all that you need to do in the web interface is to define the users, the groups, and its relationships.

You can define users as administrators in the web interface, but it just means that they can access the organization administration area. It doesn't have any influence on the Plastic repositories.

To get a better understanding of Plastic SCM users and groups please refer to our online documentation.


Adding users to the organization

In the Users and groups organization administration area, just click Add new user and you will arrive at this page:

Cloud organization - Add user

You can enter the email of any user you want to invite, even if they are not yet a plasticscm.com user. They will have to sign up to plasticscm.com prior to signing in, but you can already configure your groups counting on them as valid users.

By default, any new user will be automatically added to the built-in group called Developers. Of course, you can delete the group or rename it.


Configuring groups

By default, every new organization comes with two groups: Administrators and Developers. Every new user marked as Administrator will go to the Administrators group, and everyone else to Developers.

You can add new groups, delete the default ones, or rename them.

You can also add users to a group. Just click the edit icon to the right of the group name to access the group configuration area:

Cloud organization - Edit developers group

Here, I'm just editing the pre-configured Developers group.

From here, I can delete users and add new ones and also go to create new groups. I can also rename the group and edit its description.

If I click Add new member, I'll go to the following page:

Cloud organization - Add user to developers group

Here, I can simply type the email of a user that I want to add to the group.


Configuration wrap up

As you have seen, configuring your organization is straightforward. You'll get everything you need done with just a few clicks.

At this time, configuring users and groups is all that you can do in the web interface. Anything else is done, as usual, from the Plastic SCM GUIs or command line interface.


Encrypt all data uploaded to Cloud

When you request a new organization, you can specify that you want to enforce encryption. If that flag is set during organization creation, Plastic Cloud will only accept encrypted data for this organization.


The motivation for encryption

Code is a very sensitive asset, so some teams will be extremely worried about protecting it as much as they can.

Even though Plastic Cloud runs on Azure and hence is protected by a well-known provider, we thought it would be a good idea to offer users the choice to encrypt the data when sending it to the cloud.


How does encryption work?

Encryption is quite simple and in fact it is supported by the standard Plastic SCM servers too.

Encrypted data


How to set up encryption

When you create the organization as "encrypted", Plastic Cloud rejects non-encrypted data. There's a header in the data to notify that, but the server doesn't know how to decrypt it.

Both Plastic and Gluon clients need to be configured to handle encrypted data and will ask you to enter the encryption password.

Remark: Be very careful with the password (or pass phrase) since it is the key to encrypting/decrypting your data. If you lose it, we won't be able to recover your data; it is simply not possible!
Remark: Don't panic! You'll have your data on your own server too. You are just pushing it to the Plastic Cloud, so in the unlikely event of a lost password you'll have a local copy of your repo. But, of course, once you decide to go to production using Plastic Cloud, you had better not lose it!

What is going on under the hood is the following:

A new file cryptedservers.conf is created on your Plastic SCM server directory with the following content:

encrypted_test@cloud e33a805b-0ce5-4047-81da-3c95c3c7b2a9.key

In my case, it is saying that every data transfer from/to encrypted_test@cloud must be encrypted/decrypted using the key created on file e33a805b-0ce5-4047-81da-3c95c3c7b2a9.key.


Frequently asked questions about encrypted data

What do you encrypt exactly?
We just encrypt file data, not metadata. This means that file names, branch names, labels, user names, and so on, are not encrypted, only file data.
Does it mean that even if Plastic Cloud gets compromised, attackers won't steal my code?
Exactly, that's what it means!
What if we are a team of, let's say, five, and we're all pushing/pulling to the Plastic Cloud?
Then, you all need to configure your keys. Whether you share the cryptedservers.conf file or you share the password. That's up to you!
Optionally, on bigger teams, you can have only one Plastic SCM server in sync with Plastic Cloud, and all the other replicated repos in the internal network just access to it. There are many possible options.
Can I open up a Branch Explorer to Plastic Cloud and diff a cset if the data is encrypted?
Not at this point, but that feature will be available soon. Right now, files will show an empty content because they can't be decrypted on the client.
The goal is to get the credentials from the local server (if configured to do so) to allow this scenario.

Current limitations and remarks

Remark You need to use Plastic SCM release 5.4.16.719 or higher in order to access Plastic Cloud.
Remark The "default" repo is not created in the Cloud. You'll need to create a repo manually before you can push branches to it.
Limitation At this point, changing the revision type of an item in Plastic Cloud is not available. This is a limitation due to the new storage we're using, which is different from the standard relational databases we use with Plastic SCM.
Limitation Path-based security is still not reliable in the cloud server. It is not key for replication operations and we expect to fix it in the near future to roll out full checkin workflow support.

FAQ

Product

What is Plastic Cloud Edition?

Plastic Cloud Edition is a hosted, multi-tenant, cloud-based Plastic SCM server that organizations can use to store their Plastic SCM repositories in the cloud. More at plasticscm.com/plasticscm-cloud-edition.


What do I need to use Plastic Cloud Edition?

You'll need a Plastic Cloud Edition subscription to store your repositories in the Plastic SCM hosted service.


Does Plastic Cloud Edition require a local (on-premises) Plastic SCM Server?

Short answer: No. Yes, if you are a developer working distributed with the regular Plastic SCM by running push/pull or directly checkin to the cloud organization.

Let's go for the longer explanation now.

Programmers can achieve a better experience by using a distributed workflow with Plastic SCM. This means they will get better performance by pushing/pulling their branches in local repos to/from Plastic Cloud, instead of doing direct checkin to cloud. To work distributed you need a local server, whether it's central to the team, installed locally for each developer, or a mix of these combinations.

It is still possible to checkin directly to Plastic Cloud. It is the recommended way to work for users of Plastic Gluon, the tool designed for artists in game development, document writers, project managers, and other team members who don't work on code but work on other binary assets and don't need merge operations. Developers can also checkin directly and merge on Plastic Cloud if they need to.


How do I upload my data to Plastic Cloud?

You just need to push your data from your local Plastic SCM server to Plastic Cloud.

You will push to the Cloud the same way you push to a regular remote Plastic SCM server.

You can setup your sync view to push/pull branches in batches. Remember, your remote repos will be referenced as reponame@organization@cloud. Example: tetris@arcadegarage@cloud. The @cloud part simply tells Plastic SCM to connect to the cloud server instead of specifying a full IP or domain name.


Can I checkin and merge with Plastic Cloud Edition?

Yes, direct checkin and merge are available since 5.4.16.792 (Nov-14, 2016). We discouraged direct checkin and merge for developers before, because we thought it was slower and they would be better served by push/pull from their local repos, but we got many requests from customers who preferred this simpler way of working.

We believe that artists in game development, document writers, project managers and other team members who don't work on code but other assets, will largely benefit from Plastic Gluon + Plastic Cloud. They will be able to perform direct checkins and download only the assets or content files they need. Also, exclusive checkout may be configured to ensure only one person is modifying each file at a given time.

We believe code developers can achieve a better experience by using a distributed workflow with Plastic SCM. This means they will be probably better served by pushing/pulling their branches to the Cloud, but they can work centralized too if they prefer. They can also merge using the Cloud server.

Some remarks for developers:

  • Checkins will be slower in the Cloud because data will have to travel through the Internet (and hence through a higher latency network), as opposed to performing checkins locally or to a server on your LAN. This is fine for artists and team members working on documents, but developers who expect super-fast checkins will find it slow. In short, checking in directly to the Cloud for developers is like going back to the old SVN days. Still, we optimize the entire cycle on a continuous basis for developers who prefer to work centralized.
  • However, pushing and pulling branches, while it's certainly also affected by network latency, is something you don't do as frequently. This means that the impact of having a distant server is slower. This is the DVCS style of working: many local checkins and then just a push, the same thing that many developers use to do with Git/GitHub.

In short, you can checkin and merge on Plastic Cloud, but we recommend that developers to check the DVCS + Plastic Cloud workflow if they feel they need faster operations.


Can I lock files if I use Plastic Gluon to access Plastic Cloud?

Yes, you can. And, you can configure the files that will be locked on checkout from your Plastic Cloud organization's dashboard.


Which version of Plastic SCM do I need to access Plastic Cloud?

You need 5.4.16.719 or higher. Our network API was updated and expanded for Plastic Cloud, so older versions will not work.


Is my data secured in Plastic Cloud? What is the "data encryption" all about?

Plastic SCM can encrypt your code and data before uploading it to Plastic Cloud.

When you request a new Plastic Cloud organization to host your repositories, you can set it as "encrypted". This means that whenever you upload data to it, Plastic Cloud requires data encryption. Plastic SCM will ask you to define an encryption key locally on your server (which can be your team's server).

Therefore, it works as follows:

  • Prior to uploading data to Plastic Cloud, the contents of each file are encrypted using the key you have defined.
  • The file contents are always stored encrypted in Plastic Cloud. This means that in the unlikely event that the server is compromised, your data won't be accessible by the attacker. The data is encrypted using a key that belongs to you. Plastic Cloud will never have or require access to this key, so it's unable to decrypt the data.
  • Whenever you or any of your team members download file contents from Plastic Cloud, the data is decrypted at your computers once it's received from the Cloud.

Every team member has to share the same data encryption key to work on the same organization. If everyone used a different one, nobody would be able to decrypt data encrypted by others.

Only file contents are encrypted. File names, directory names, branch names, comments and label names are not.


Is the connection to Plastic Cloud secured?

Yes, Plastic Cloud only allows SSL connections. Plastic knows that every connection to @cloud must be secured.

While a regular Plastic SCM server listens both in TCP and SSL, Plastic Cloud is restricted to SSL to enforce secure communications.

Thus, your server or client connection to the Cloud must be correctly configured to use SSL (which is the default out-of-the-box setting, by the way).


What happens if I accidentally remove a repository in Plastic Cloud?

Don't panic. Your data is still there. Just contact support and we will help you reconnect the repository.

Actually, when a repository is removed, it's just marked as deleted. We wait for a few days before actually erasing the data to give you time to recover accidentally removed repos.


Where is Plastic Cloud hosted?

Plastic Cloud is currently hosted in Microsoft Azure. That means it's built on top of well-proven technology by a trusted provider.

Plastic SCM metadata is stored in a combination of SQL Server Azure plus blob storage. Databases are replicated for high availability and redundancy.

Versioned files are stored in Azure blob storage. Each blob is replicated up to six times on two different physical locations.


What does it mean to choose a datacenter?

In order to speed up the data transfer, you can choose the closest datacenter to you to store your versioned file data.

There are several datacenters around the world, so by choosing the closest one to your team, you will reduce the network latency and hence greatly improve data transfer.


Does Plastic Cloud provide a way to browse repositories online?

Not currently. You can use your Plastic SCM client to list repos, as you would do with a regular remote Plastic SCM server.


Licensing and pricing

How does Plastic Cloud Edition licensing work?

You need a Plastic Cloud Edition subscription, billed on a per-team basis.

  • Plastic Cloud Edition starts at $6.95/month per team including all software plus up to 5GB cloud storage.
  • Once the 5GB limit is exceeded, the monthly price per team is $4.95 for up 15GB.
  • The next level is $19.95/month per team for up to 100GB, which is the level specially designed for game development teams, 3D design teams, or teams who need to handle large binaries.
  • After the first 100GB, your subscription will grow by buckets of 50GB, at an additional $7.45/month per team per bucket.

Plastic Cloud will automatically upgrade your subscription to the next size tier without any interruption in the service. You will receive an email with the details of the payment seven days in advance of the next charge.

You need a valid Plastic SCM license (more on "licensing" below) to subscribe to Plastic Cloud. The license can be a valid Enterprise, Team, Cloud, or Personal Edition license. You can also use a Trial Edition.


I'm a Community Edition user, can I use Plastic Cloud?

Yes, Community Edition users who qualify as open source projects and non-profit organizations can subscribe to Plastic Cloud and use their CE licenses to access the service.


I'm a Personal Edition user, can I use Plastic Cloud?

Yes, you can subscribe to Plastic Cloud while using your Personal Edition for free.


I have a Plastic SCM Trial License; can I use it to connect to Plastic Cloud?

Yes, the Trial License is a full featured license and allows you to access Plastic Cloud. In fact, it's a great way to test the entire ecosystem before you buy, since you have 30 days for free to use both products.


What happens if I cancel my subscription?

If you cancel your subscription, you will have a few days (typically one week) to retrieve all your data before we remove your organization to free up space. Upon cancellation, you will receive an email notifying you when the data will be finally erased.


Last updates

July 17, 2019
  • Read how to Get started with Plastic Cloud Edition by working with Plastic or Gluon.
  • July 4, 2019
  • Learn how to create a Plastic Cloud Edition organization.
  • June 26, 2019
  • Welcome to the Plastic Cloud Edition guide!