werf configuration should be stored in the application Git repository along with the application code.

Pay attention to the crucial project parameter that stores a project name since werf will be using it extensively during the converge process. Changing this name later, when your application is up and running, involves downtime, and requires re-deploying the application.

werf_image is a special template function for generating the full name of the image that was built. This function has a name parameter that corresponds to the image defined in the werf.yaml ("frontend" or "backend" in our case).

At this step, werf calculates the target image names. Image names may change or stay the same after the new commit is made depending on the changes in the Git repository. Note that each Git commit is associated with deterministic and reproducible image names.

What’s next?

Deploy your first demo application with this quickstart or check the guides – they cover the configuration of a wide variety of applications based on different programming languages and frameworks. We recommend finding a manual suitable for your application and follow instructions.

Refer to this article if you feel like you are ready to dig deeper into the general overview of CI/CD workflows that can be implemented with werf.