CircleCI is testing a new experience that aims to help you bootstrap the project creation process. For new projects created by new users:
- If a
.circleci/config.ymlalready exists in the repository, CircleCI will use thatconfig.ymlto trigger pipelines - Else: CircleCI auto-generate a
config.ymlwithbuild&testjobs that are applicable to your application
CircleCI will try and detect the following languages/frameworks to generate the build & test jobs:
- Javascript / Typescript / jest
- Python / pytest
- Go / gotestsum
- Ruby / rspec
- Java
- Rust
- PHP
If CircleCI cannot detect and generate a build or test job, CircleCI will generate a fallback template with a stubbed build, test, and deploy workflow that you can use to build your own configuration file (config.yml).
To view the auto-generated config.yml, navigate to the “in-app config editor” by clicking on “Configuration File”.
If CircleCI was able to auto-generate a build and test job from your language/framework, you’ll see the commands that we used to run tests and build artifacts.
If you are seeing a “fallback template” , each job definition has a place to replace a command with your specific build, test, or deploy commands:
To make changes to this file, copy the contents, edit it in your IDE or text editor of choice, and commit the modified file to your default branch in a new .circleci directory with the name config.yml.
Once it’s committed as .circleci/config.yml in your default branch, it will be used as the source for running pipelines on subsequent commits.
You can see the open source library used for config.yml generation here. Questions or feedback? Respond to this thread or email me at sebastian @ circleci.com


