Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

YAML_FILE_ERROR: YAML file does not exist

I'm trying to implement a pipeline on AWS, but I get an error:

YAML_FILE_ERROR: YAML file does not exist

I don't know why. I'm using github repo for mean stack project, entry file is docker-compose. Yml.

like image 309
Abhishek Avatar asked May 08 '19 10:05

Abhishek


2 Answers

AWS CodeBuild expects the buildspec.yml file to be at the top level. A common mistake people make is to zip the code folder, which does contain buildspec.ymlat the top level, but when this zip file is extracted, it creates the code folder and puts the buildspec.yml inside that (the way it was locally), meaning buildspec.yml is now NOT at the top level.

The solution is: instead of zipping the code folder, go inside the code folder, select all the files, and then do a zip.

This is what Amazon says here:

Important

Do not include the (root directory name) directory, only the directories and files in the (root directory name) directory.

It's a quirky little thing that trips many people (including me).

like image 115
Pravin Singh Avatar answered Nov 09 '22 18:11

Pravin Singh


Now Amazon has given an option to change the location of the buildspec.yml file or even change the yml file name.

In Developer Tool -> Build -> "Build Project" -> "Your project Name" -> "Build details" -> Buildspec -> "Buildspec name - optional"

This is the instruction by AWS for that setting:

If your buildspec file uses a different name or location, enter its path from the source root here (for example, buildspec-two.yml or configuration/buildspec.yml).

like image 36
user13715357 Avatar answered Nov 09 '22 18:11

user13715357