You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 39 Next »

What is a Project?

Projects allow you to group the various aspects of Continua into logical groupings. A project can contain multiple configurations, repositories and variables that are all grouped according to your business rules. Projects allow you to compartmentalise your entire build process into different sections for different development teams. For example, your development team may be broken up into several teams that all work on different development projects. Within this environment you could setup Continua so that each team has their own project. This setup has the following advantages:

  • Security can be applied so that each team can only see their own projects.
  • Each team's project contains multiple configurations that include their release configuration, any feature configurations and R&D configurations.
  • Each team's project links to their own source repositories. This means that you only need to link Continua to your Version Control Systems (VCS) once while still limiting each team's access to their own VCS.
  • Any variables that may be used across multiple configurations can be declared on the project.

Creating and Editing Projects

Creating a New Project

Projects can be created in Continua CI by navigating to the homepage and clicking Create Project in the Tasks Menu. By creating a project you will be taken to the Project WIzard (See the section below).

Editing an Existing Project

Existing projects can be edited by navigating to a project and clicking Edit Project in the Tasks Menu. By editing a project you will be taken to the Project Wizard (See the section below). 

Project Wizard

The Project Wizard is where all properties associated to a project are set. Within the Project Wizard are many sub pages that allow you to edit and create various Continua elements and attach them to the current project.

The various sections can be quickly accessed through the Project Wizard Menu as seen above. This menu can be found at the top of every Project Wizard page.

Details

The Details step of the Project Wizard is where a project's basic settings can be input.

Name

This is used to identify each project. Each project must have a unique name.

Slug

The Slug is used in Continua URLs when linking to a project or item within a project. By default, this will be the project's name with all special characters replaced with underscores. Each project must have a unique slug.

Description

This can contain any additional information relating to the current project. 

Versioning

 Versioning can be applied either at project level or configuration level.

Note that project-wide versioning is only available from version 1.7 

If project-wide versioning is set then the same version counter is incremented for each build across all project configurations. This can be overridden allowing a project configuration to increment its own version counter or use it's own version formatting for each build.

If project-wide versioning is not set then all configurations have their own version counters and formatting. 

Version Counter

The version counter is a numeric value which is incremented by one every time a project configuration is built.

This can be considered an offset for any builds created under this project. For example, if you set the Version Counter to 50 then the first build will be version 1.0.0.50, the second build will be 1.0.0.51, etc.

By default this is set to 0.

Reuse Build Number 

Ticking the "Reuse build number if previous build was discarded, stopped or failed while initialising" checkbox will cause the version counter to be decremented if a build was discarded by a configuration condition, or was stopped or failed while initialising.

The build number will not be decremented in the build failed or stopped while it was queued or running. It will also not be decremented if the version counter has been incremented by another build for this project which has started in the meantime.

Version Format String

The Version Format String sets how each build for configurations under this project should display its version. For example, the default Version Format String is set to 1.0.0.$Build.BuildNumber$ (The $Build.BuildNumber$ expression will be substituted for the Version Counter value at runtime). This means that all builds for this project will have the following versioning:

  • 1.0.0.1
  • 1.0.0.2
  • ...
  • 1.0.0.7548, etc.

Say you are about to start work on version 1.1 of your project. All you would need to do is set your Version Format String to 1.1.0.$Build.BuildNumber$ which will then produce the following versioning:

  • 1.1.0.7549
  • 1.1.0.7550, etc.

Expressions and Variables can be used in the Version Format String. This allows you to include dynamic values into your versioning.

Overrides 

Any configurations which are overriding these versioning settings will be listed at the bottom of the versioning section. A button is displayed allowing you to clear the overridden settings.

Repositories

The Repositories step allows you to link Version Control Systems to the current project. Head over to the Repositories page for more information on creating and editing repositories.

Variables

The Variables step allows you to create and edit project level variables. The Variables page includes an in depth guide to variables.

Security

The Security page allows you to specify project wide security settings. Any security settings that are defined at the project level will override global settings. For example, if a user has project read access but you grant them project edit status, they will be able to edit the current project but only view any other projects. Note that configuration security settings will override project security settings.

More information on creating and editing user permissions can be found in the Access Control section.

Note that when you set explicit permissions on the project you will only be able to set project, configuration and build permissions. All administration permissions are project independant and can only be set on global security settings.

Cleanup

The Cleanup page allows you to apply a build cleanup policy for all configurations in the project. For more information on cleanup policies, check out the Cleanup Policies page.

Finished

The Finished page allows you to review the configurations that are attached to the project. From this page you can modify existing configurations that belong to this project, create a new configuration or create another project.

Searching Projects

A specific project can be found in Continua by using the Project Search menu which is located at the top of every page in Continua. This menu lists all projects and also includes a search to find a specific project.

While you are viewing project, configuration or build pages, you will notice that this menu changes from All Projects to <The Current Project Name>. By clicking on the project name you will be taken back to the project homepage. While you are in a specific project, you can still use to the search functionality to navigate to a different project (As seen below).

Viewing All Projects

All projects can be viewed and edited In the Administration Section under Projects. This page lists every Continua project and can be useful if you have projects that do not have any associated configurations.

Deleting Projects

A project can be deleted through the Administration Projects page.

Help! I Can't See My New Project On the Homepage

Only projects with at least one configuration will be shown on the Continua homepage. To edit or navigate to your project, either use the Project Search Menu or the Projects section in Administration.

 

  • No labels