3

I'm having trouble deploying my app to heroku, I'm using the heroku_deploy.sh from documentation and get

Deploying Heroku Version 82d8ec66d98120ae24c89b88dc75e4d1c225461e
Traceback (most recent call last):
  File "<string>", line 1, in <module>
KeyError: 'source_blob'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
KeyError: 'source_blob'
curl: no URL specified!
curl: try 'curl --help' or 'curl --manual' for more information
Traceback (most recent call last):
  File "<string>", line 1, in <module>
KeyError: 'output_stream_url'
curl: try 'curl --help' or 'curl --manual' for more information

I'm using a custom docker image, but It has python on it, anything else I should make sure exists?

Chen Kinnrot
  • 20,609
  • 17
  • 79
  • 141

2 Answers2

0

I had the same issue with Meteor deployment to Heroku via Pipelines. The culprit seems to be a secured API key to HEROKU. Once I removed a tick and had it in plain text it all started to work well.

vitkon
  • 1,058
  • 8
  • 13
  • Can you please be more specific about the solution? what was the location of the tick that you removed? I am having the same problem – HamsterRoll Apr 10 '17 at 10:29
  • The error indicates a problem with the user's script handling the data returned from Heroku. Secure and insecure environment variables are made available the same way to Pipelines builds, as normal environment variables, so I don't see how this could be related. – Matt Ryall Nov 23 '17 at 03:25
0

The error message you're getting indicates that the Heroku sources API isn't returning a source_blob attribute as part its response, causing the script to fail.

Unfortunately, the deployment script you're using has no error handling around creating a new "Source" object via the Heroku API (lines 18-20), so the most likely problem is a simple authentication failure (incorrect username/password or incorrectly encoded credentials).

My recommendation is to add some logging to the deploy script, inserting echo $URL_BLOB after line 20, and see what is being returned by Heroku. It should help you diagnose the problem.

We also have a more recent recommendation around deploying to Heroku via a Git remote, which might work better than this old hacky script. (If you can reply with where you saw it linked from our site, I'll go and update it.)

Matt Ryall
  • 9,977
  • 5
  • 24
  • 20