Creating projects, environments and assets
Create MintPress projects, environments and assets from which you'll be able to run changes.
After following this guide you should understand MintPress's structure and know how to:
- create a project, an environment and an asset
- add a remote Git repository to a project
- create an asset template and a template version
Projects
Projects are the top-level organizational unit in MintPress. Any Git remotes, properties, settings and asset templates you define in the project will be available to all environments and assets within it.

Creating a MintPress project
Projects are created from the "Projects" page, accessible via the sidebar menu.
To create a project, click on the "Create project" button at the top right of the page.

Give the project a name, description, a unique code and click on "Create project" at the bottom of the dialog.
Git remotes in MintPress
MintPress must be able to access your Git repositories to be able to run the actions defined in them.
In MintPress, a Git remote is a named reference to a Git repository. It is used to securely store the credentials to access a single Git repository.
To add a Git remote to your project, click on the "Git remotes" tab in the project's page.

In the dialog that appears, give a name to your Git remote, paste in the Git repository link and add your credentials, either username/password or an SSH key (you can optionally provide the SSH key passphrase if required) and click "Add Git remote" at the bottom of the dialog.
Your Git remote will be ready for use once it is visible in the remotes list for the current project.
MintPress supports multiple Git remotes per project, allowing you to run actions from different Git repositories at any moment.
Environments
Environments are the second level of the MintPress structure. They are used to logically group assets (more on that later) and to provide an intermediate level for overriding your project's properties and settings.
When security is considered, you can create different environments for different teams, ensuring that each team only has access to the assets they are responsible for and the actions they are allowed to run.

Creating an environment
To create an environment, click on the "Environments" tab in the project's page.
Click on the "Create environment" button at the top right of the page.

Give the environment a name, description, a unique code within the project and click on "Create environment" at the bottom of the dialog.
Your environment will be ready for use once it is visible in the environments list for the current project.
Assets
Assets are the lowest level structure in MintPress and can be created inside a project or an environment. Each asset is associated with a Git repository and a Git revision via an asset template version.
Asset templates
To allow users to have different resources (defined by actions.rb files) within the same Git repository, MintPress allows you to define asset templates. Asset templates in MintPress can be seen as a way of referring to different actions.rb files within the same Git repository.
For example, if you have a Git repository with the following structure:
my-project/
db_server/
actions.rb
web_server/
actions.rb
You can create two asset templates, one for db_server and one for web_server. The actions in db_server will be available for the assets using the db_server template and the actions in web_server will be available for the assets using the web_server template.
Creating an asset template
To create an asset template, click on the "Asset templates" tab in the project's page.

Provide a name, description and a unique code for the asset template, select a Git remote and click on "Create asset template" at the bottom of the dialog.