Transitioning to Organizations and Teams
Let us know how you feel about this.
This guide discusses how existing user accounts were migrated to Organizations and Teams.
Previously, users of Xamarin Test Cloud existed under a different organizational hierarchy. It is important for current users of Xamarin Test Cloud to understand how the new organization and structure is derived from their old account information.
Originally, Xamarin Test Cloud created a user account with a unique Test Cloud API key. Applications and tests were uploaded against a specific user account. Test Cloud recognized each application individually; it did not recognize that an application could have an iOS and an Android version. This hierarchy can be seen in the following diagram:
As described in the previous section, Xamarin Test Cloud changes this hierarchy by introducing organizations and teams. As a part of this change, existing users will have their old account data migrated to the new organizations and teams structure.
Transitioning to Organizations & Teams
Each user account will automatically be converted into an organization with one team and one user. That user will automatically be the organization administrator and the team manager.
The name of the organization will automatically be extracted from the user’s e-mail address and the name of the team will be extracted from the application name. So, for example, say the user email@example.com is working on an application called Beagle. The new Organizations & Teams hierarchy will automatically create a team called Xamarin.com with one application named Beagle. The team will be managed by a user name Rupert Chimpanzee. The team will belong to a Xamarin.Com organization, which is in turn administrated by Rupert Chimpanzee.
Xamarin Test Cloud will convert the old collaborators to users belonging to a specific team.
Applications That Share the Same Name
Currently, Test Cloud allows two applications to share the same name, for example an Android and an iOS version of the same application. If possible, Test Cloud will try to combine the two separate applications into one team with two applications.
In order to do this, Test Cloud will examine the collaborators for each application. If the list of collaborators for each application is identical, then Test Cloud will combine the two applications into one team.
If the collaborators list for each application is not identical, then Test Cloud will create two separate Teams. An administrator must manually combine the two teams.
Team API Keys
The other noticeable difference in Organizations & Teams is that Xamarin Test Cloud requires a Team API key instead of an Account API key. The old user account API key will no longer be valid, Test Cloud users will submit test runs using the appropriate team API key.
When submitting tests using the team API key, users must also provide their e-mail address on the command line with the
--user parameter. This will allow Test Cloud to track which user uploaded each test run. The email address will be validated as a member of the team before Test Cloud will accept the submission.
For example, here is the old way that test runs were submitted to Test Cloud:
$ test-cloud submit myapp.apk 101e32470569208470c6fb7c53e07660 --devices 3eb2ff6d --app-name "Sample Android Appl"
Notice that this is using the old user account API key.
With the new Organizations and Teams, this command line has now changed to use the:
$ test-cloud submit myapp.apk 3b94f93f3df283edbcc7e9937a93872d --user firstname.lastname@example.org --devices 3eb2ff6d --app-name "Sample Android App1"
The new command line parameter identifies the user who is submitting the test and uses the Team API key.
This guide described the organization and team structure that is used to manage users and apps in Test Cloud. It also included a section on how we’ve migrated older accounts to the new hierarchy.