Project

A project is a repository preconfigured that is visible and accessible to all members of an organisation. Users can start a workspace from a project and use the prebuild image which will shorten the workspace creation time to seconds.

Project Creation

To create a new project, it just needs the repository URL and machine type.

After the project is created, you can see all the Git branches, and choose to create a prebuild for a branch.

Workspace Creation

After the project is created, you can create new workspaces from the project. Please note that the project will be available to all members of the organisation, even if they didn't have permission in the original repository. If you'd like project separation for different members, you can create new organisations and put the projects in different organisations.

When you create new workspaces from a project, you'll be able to choose the Git branch you want the workspace to start from, and you can see if there's a prebuild for this branch already.

Prebuild

A prebuild is created from a Git branch in the project, and it prebuilt the container images from the devcontainer configurations in the repository. When users create a workspace from it, it will use those container images to create the workspace, so that users don't need to build the images again. This can shorten the workspace creation from minutes to seconds depending on the complexity of the project.

You can manage all the prebuilds for a project in the prebuild tab.

You can initiate a prebuild creation from a branch in the branches tab. Also, when a workspace is created from a branch, and a prebuild isn't available, a prebuild creation will be automatically triggered during the workspace creation.

If there are new changes pushed to the branch, the prebuild status will become 'Outdated', and a new workspace creation from it will trigger a new prebuild creation. The 'Outdated' prebuild will be deleted if there are no depending workspaces.

Environment Variables

You can configure environment variables for a project, and they will be injected for building prebuild images, and the variables will also be used when users start workspaces from the project.

Machine Type Setting

You can change the machine type for the project in the settings tab. When users create a workspace from this project, the machine type in the workspace creation will default to this machine type setting in the project. Also, the prebuild creation initiated from the branch tab will use this machine type.

Last updated