Heroku buildpack error while pushing - python

When i try to add my github repo Gitlink i get this error
! No default language could be detected for this app.
HINT: This occurs when Heroku cannot detect the buildpack to use for this application automatically.
See https://devcenter.heroku.com/articles/buildpacks
! Push failed
What is wrong???

Heroku knows that your app is a Python app by the existence of one of two files in the root of your application:
PipFile
requirements.txt
You should set up a requirements.txt or Pipfile in order to get your project work on Heroku. In addition, you will need Postgres as your deployment DB, if you need a db at all.
You can have a look for more at the docs or the getting started guide

Related

Heroku things my build pack is node.js when its python

I made a package.json and added:
Heroku buildpacks:set heroku/python
It still fails when deploying. This is a python app so I don't know what is happening.
-----> Building on the Heroku-20 stack
-----> Determining which buildpack to use for this app
-----> Node.js app detected
parse error: Invalid numeric literal at line 1, column 7
! Unable to parse package.json
-----> Build failed
We're sorry this build is failing! You can troubleshoot common issues here:
https://devcenter.heroku.com/articles/troubleshooting-node-deploys
If you're stuck, please submit a ticket so we can help:
https://help.heroku.com/
Love,
Heroku
! Push rejected, failed to compile Node.js app.
! Push failed
For apps that do not have a buildpack explicitly set, Heroku tries to detect which buildpack to use in the following order:
Ruby
Node.js
Clojure
Python
...
Buildpack detection is based on the presence of certain files. In the case of the Node.js buildpack, it looks for a package.json in the root directory of the project. It looks like your app has such a file.
Your question isn't entirely clear, but I think you put this text inside your package.json:
Heroku buildpacks:set heroku/python
That is not valid, so the Node.js buildpack doesn't know what to do with it.
A package.json file is from the Node.js ecosystem, and it must have a specific set of keys and values. Unless your application also requires Node.js, you shouldn't have a package.json file at all. Assuming you don't need that file, delete it and commit its removal.
Your Python project will need one of the following:
requirements.txt
setup.py
Pipfile and Pipfile.lock
If you already have one of these, great. Just redeploy and Heroku should detect your app as a Python app.
If you don't have any of these, the easiest thing to do is to place an empty requirements.txt file in the root of your project. Make sure to commit it before deploying again.
If you wish to be explicit, you can run the command you tried to use before on the command line:
heroku buildpacks:set heroku/python
This shouldn't be necessary for a single-language app, though. Note that heroku is all lowercase.

Heroku "Couldn't find that process type"

Been trying to deploy my python selenium code to Heroku but I keep running into this issue:
--
Terminal command:
heroku ps:scale bot=1
Output:
ยป Warning: heroku update available from 7.53.0 to 7.59.2.
Scaling dynos... !
! Couldn't find that process type (bot).
Procfile:
bot: python sfkafskafne.py
(Pycharm)
I'm deploying attempting to deploy to Heroku using the PyCharm terminal with the command above
I'm deploying attempting to deploy to Heroku using the PyCharm terminal with the command above
None of the commands in your post deploy your code. heroku ps:scale scales dynos for code that has already been deployed.
Before you scale your dynos, you need to get your code onto Heroku by deploying it. You can do so via git push, GitHub integration, or Docker.
The first two options require that your code be committed to a Git repository. That's a good idea anyway, even if you choose to use Docker deployment.
For the first option, something like this should get you going:
Change to the project directory with cd INSTTTAAAAA
Create a Git repository with git init
Commit your code with git add . followed by git commit -m "Initial commit"
Add a remote with heroku git:remote
Push your code with git push heroku main
Beyond this, I suggest you read the documentation I linke to above. There's lots more to learn that's beyond the scope of a SO question.
You will also want to push your code to GitHub or similar as well. Heroku is not meant to be your primary source code repository.
Side note: I'm not sure if INSTTTAAAA and sfkafskafne mean something in a language that you speak, but if these are effectively random I strongly urge you to rename them. Using good, clear names is very important.

Heroku not loading procfile

I've tried other peoples solutions to getting there procfile recognised and it's just not working for me. Really confused about how I can get heroku to recognize my Procfile! I've moved it around into different folders and whatnot but it just won't recognise it.
web: waitress-serve --port=$PORT alex1.wsgi:application
This is my code. It's sitting right next to my requirements.txt file which is getting picked up by heroku fine. using echo to create the file or even echo is not working.
https://github.com/Hewlbern/Videography-Website/tree/master/Alex1 <--- the github link that I'm trying to deploy to heroku from. Can see where i've placed it and etc if anyone can help!
Such sad, many mad.
EDIT
Put them at top of directory - still not working.
Here's the error log.
-----> Python app detected
! Warning: Your application is missing a Procfile. This file tells Heroku how to run your application.
! Learn more: https://devcenter.heroku.com/articles/procfile
-----> Installing requirements with pip
-----> $ python manage.py collectstatic --noinput
63 static files copied to '/tmp/build_b9ce82b65ae441b651c56911a7474859/Hewlbern-ConsultingPage-1720e65/djreact/static/root'.
-----> Discovering process types
Procfile declares types -> (none)
-----> Compressing...
Done: 64.3M
-----> Launching...
Released v19
https://consultingpage.herokuapp.com/ deployed to Heroku
In response to Mike's point below I went through his example I reached this point.
C:\Users\Holbinator\Desktop\Software Dev\Alexandria>git push heroku master fatal: 'heroku' does not appear to be a git repository fatal: Could not read from remote repository.
I then re-did Git Init in the root directory and then tried to load the code from Github.
This led to the same issue.
I'll put this in my edit. Thanks! I'm going to try and do your method now and work out why I couldn't in this instance.
EDIT TWO
Now realised I needed to delete a extra heroku app. Now loading the files using heroku cli. Have no received an error, unsure how to access error logs but will try and solve the issue now.
First point of my recommendation will be to put .idea directory in .gitignore file.
I've uploaded your application on heroku and as result -Procfile was added successfully.
Steps:
git add . in your root directory
git commit -m "init commit"
heroku create
git push heroku master
That's mine result, but you will probably see something similar to this :
Afterwards I've launched your application via heroku open command and received the 500 error.
Screenshot of logs
I hope this answer will be useful, also read about deploy on heroku
UPD: Please check if you using git init in your root directory of project

I can't able to push on heroku

I have an app on heroku named as floating-river-39482 .And I'm trying to deploy the app by giving the command git push heroku master .
But I got an error from terminal like this
remote: ! No such app as sleepy-inlet-36834.
fatal: repository 'https://git.heroku.com/sleepy-inlet-36834.git/' not found
In this error message the name of the app is sleepy-inlet-36834 .But I'm trying to push the app floating-river-39482 .
I don't have an app named sleepy-inlet-36834.
How can I correct this error?
It looks like you've somehow got your Git repository referencing an old (or deleted) Heroku application.
What you can do most easily is open up your .git/config file in your project, and switch out the https://git.heroku.com/sleepy-inlet-36834.git/ URL with the correct one for your Heroku application: https://git.heroku.com/floating-river-39482.git.
Then give it another go =)
To explain further: Heroku works by using Git to setup a 'remote'. Remotes are just places you can push (or pull) code from. Git creates remotes by listing them in your project's .git/config file.

How can I get Heroku to detect buildpack?

I am trying to deploy my Pyramid app on Heroku and no matter what I do, I get the failed to detect buildpack error message after I try to push.
I have my requirements.txt from my pip freeze in there next to my setup.py as well as my Procfile and runapp.py. I am not using my master branch for Heroku and have been using
git push heroku local_branch:master
I have also tried to set the build pack manually by using
heroku buildpacks:set heroku/python
I also have tried using external buildpacks from github, but that also does not work. I must be missing something in my requirements.txt?
Also, I have read Pyramid's Docs on Heroku deployment as well as Heroku's. I have browsed here for help but all I can find is that to make sure requirements.txt is spelled correctly or just re-init my git.
Add a "requirements.txt" file to the root directory of your repository.

Categories

Resources