Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

Before reading this page, it is highly recommended you read the repositories concept page and the Global Settings, Projects & Configurations page.


As explained on the Continua CI Repositories page, a repository in Continua is a reference to an external version control system. Once a Continua Repository has been created you can connect it to a Configuration and then use/access the files in that Repository within your build process. Continua will also monitor that repository for changes and trigger builds off it if you have setup a Trigger. Since Continua allows you to create many projects and many Configurations within each project, the list of repositories could grow quite large. To reduce the potential amount of clutter and make repositories easier for the user to manage and secure, we allow Repositories to have one of three scopes. They are Global, Project and Configuration.

Note: All Repositories created in Continua are created equally and work the same way regardless of their scope.  The The scope of a repository allows you to group repositories according to where they are used. For example, if you have a repository that will only ever be used by one configuration then it is a good idea to attach that repository to the configuration rather then attach it to the global level.

By correctly managing repository scopes you can apply security to your repositories. If you assign a repository to either a configuration or project then only those users that can edit those configurations or projects can modify those repositories. For example, lets say your development team is broken up into multiple teams that work on different projects and these projects have been split up in Continua so that each team can only access their project and its configurations. By assigning your repositories to the project or configuration scope, you are limiting repository access so that your development teams can only access their repositories.

Note that a repository Repository is simply a way to reduce the amount of Configurations or Users that can see it. The scope of a Repository can always be changed.

 

Table of Contents

Repositories

...

set to the Global Scope

Global Repositories are accessible anywhere in Continua and can be connected to any and every Configuration.

 

Repositories Project with Scope


Repositories set to the Project Scope

Project repositories Project Repositories are only accessible by Configurations belonging to that Project. By creating a Repository with Project scope, you can lock Users out of the project which will in turn disallow them from seeing the Repositories within it.

Repositories Configuration with Scope

configurations in that project. Only users that have access to the project will be able to view/edit repositories with a project scope.


Repositories set to the Configuration Scope

Configuration repositories Configuration Repositories are only accessible by a single Configuration. Creating a Repository with Configuration scope has the same security benefits as Repositories with Project scope but at a Configuration levelconfiguration. Only users that have access to the configuration will be able to view/edit repositories with a configuration scope.


Changing a

...

Repository's Scope

At any point in time you will be able to can change the scope of a repositories. Obviously widening the scope is safer than narrowing but either way is possible. repository. By widening the scope of a Repository, for example, making a Project repository Global or a Configuration Repository Project or Global you open it up for many more Configurations to use it. you are opening it up so that more configurations can access the repository. Conversely, narrowing the scope of a Repository lessens repository reduces the amount number of Configurations configurations that can use itaccess the repository. Therefore, when narrowing the scope of a Repository repository (moving a Global global repository to Project the project or Configuration configuration scope, or a Project Repository to Configuration project repository to configuration scope) you must take care that Configurations configurations that use that repository can still access it still can after changing the scope.

Note: Continua will notify and stop the user from narrowing the scope of a Repository if it means a Configuration that currently uses it will no longer be able to use it if the scope change went aheadrepository if changing the scope will deny access to a configuration that is currently using that repository.