In Keptn, a project is a structure that allows organizing your services. A project is stored as a repository and contains branches representing the multi-stage environment (e.g., dev, staging, and production stage). In other words, the separation of stage configurations is based on repository branches.
To describe the stages of a project, a shipyard file is needed that specifies multi-stage delivery workflow as shown by an example below.
Note: To learn more about a shipyard file, see declare shipyard before creating a project.
stages: - name: "dev" deployment_strategy: "direct" test_strategy: "functional" - name: "staging" deployment_strategy: "blue_green_service" test_strategy: "performance" - name: "production" deployment_strategy: "blue_green_service" remediation_strategy: "automated"
Recommended approach for Keptn in production: Create a project with the Keptn CLI using a Git upstream:
keptn create project PROJECTNAME --shipyard=FILEPATH --git-user=GIT_USER --git-token=GIT_TOKEN --git-remote-url=GIT_REMOTE_URL
Demo/Lab setting: Create a project with the Keptn CLI without a Git upstream and no backup:
keptn create project PROJECTNAME --shipyard=FILEPATH
To delete a Keptn project, the keptn delete project command is provided:
keptn delete project PROJECTNAME
Note: If a Git upstream is configured for this project, the referenced repository or project will not be deleted. Besides, deployed services are also not deleted by this command. To clean-up all resources created by Keptn, please go to Clean-up after deleting a project.