16

I am trying to deploy an Heroku app.

I must be doing something wrong with the Procfile. When I run foreman check I get this error.

ERROR: no processes defined

I get pretty much the same thing when deploying on Heroku

-----> Building runtime environment
-----> Discovering process types

 !     Push failed: cannot parse Procfile.

The Procfile looks like this

web: node app.js

What did I miss?


update I re-did all from the start, It works properly now. I think I might have issue with Unix line ending

Kalana
  • 5,631
  • 7
  • 30
  • 51
platane
  • 178
  • 1
  • 1
  • 6

7 Answers7

18

Just encounter "Push failed: cannot parse Procfile." on Windows. I can conclude that It IS "Windows-file format" problem, NOT the context of file itself.

make sure to create a clean file, maybe use Notepad++ or other advanced editor to check the file type.

ruxming
  • 1,751
  • 1
  • 11
  • 7
  • 2
    Thank you! I was going crazy trying to figure this out. I re-created the file in Notepad++ and that solved the issue! – Ace Hyzer Mar 28 '14 at 06:45
10

save as a utf-8 character file, rather than what it is - a utf 16 character file. this is a confirmed fix.

Brad Baum
  • 101
  • 1
  • 2
8

Open your current Procfile with notepad. Create a new Procfile.txt and paste the content of your original Procfile . Save your Procfile and replace it with your new Procfile

jhuguz
  • 81
  • 1
  • 4
6

I had the same issue, using VSCode I changed file to UTF-8 (bottom right), saved file and pushed it - and it was successful.

3

Is your Procfile in the root of your project? Is it spelled with a capital P? Does it have unix line endings?

ChrisGPT was on strike
  • 127,765
  • 105
  • 273
  • 257
Nitzan Shaked
  • 13,460
  • 5
  • 45
  • 54
  • 1
    Yes it's in the root. it's correctly spelled, and git track the correct spelling. I think I will got with the unix line endings because I am on windows. – platane Nov 08 '13 at 23:28
2

It is happening due to a different encoding type in your Procfile.

  1. Open your Procfile in a text editor, preferably, Notepad.
  2. Save the file and in the encoding option, change the encoding to UTF-8 (default is UTF-16).
  3. Replace your current Procfile with this file in the root folder of your project and remove the .txt extension.

Push your code again and you'll be good to go!

0

Create Procfile using the following command,

echo web: gunicorn app:app > Procfile
Codemaker2015
  • 12,190
  • 6
  • 97
  • 81