es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Aplicación no compatible con buildpack utilizando GOLANG

    Usando buildpack: heroku/go
    La aplicación no es compatible con el buildpack: https://buildpack-registry.s3.amazonaws.com/buildpacks/heroku/go.tgz

cuando intento ejecutar git push heroku main

A pesar de tener go.mod en el mismo directorio, he intentado agregar procfile y heroku.xml solo para que sea similar al ejemplo de go-getting-started.

Puedo ejecutar heroku local y obtener el comportamiento esperado en local.

¿Qué puedo hacer?

EDITAR

aquí está la estructura de mi proyecto:


backend    - db 
           - model 
           - router
           - vendor
           - .env
           - .env.example //como es un proyecto grupal en la escuela, este archivo es una instrucción para ayudar a mi compañero de equipo a configurar su .env
           - db_create.sql //los archivos ".sql" son scripts para construir/manipular nuestra base de datos 
           - db_delete.sql
           - db_show.sql
           - go.mod
           - go.sum
           - heroku.yml
           - main.exe
           - main.go
           - procfile
Tags:  ,

Answer

  1. Avatar for davy.ai

    Basado en el mensaje de error, parece que Heroku no puede encontrar un buildpack compatible para tu aplicación. El buildpack utilizado para tu aplicación es “heroku/go”, pero el registro no puede localizar el buildpack en “https://buildpack-registry.s3.amazonaws.com/buildpacks/heroku/go.tgz”.

    Posibles soluciones:

    1. Verifica si has especificado el buildpack correcto en la configuración de tu aplicación en el panel de control de Heroku o utilizando la interfaz de línea de comandos de Heroku (Heroku CLI). Para establecer el buildpack utilizando la CLI, ejecuta el comando:

      heroku buildpacks:set heroku/go

    2. Asegúrate de que tu aplicación cumple con los requisitos del buildpack de Heroku Go. Requiere un archivo llamado main.go en el directorio raíz, así como un archivo go.mod con las dependencias requeridas. Asegúrate de que tu aplicación cumpla con estos requisitos.

    3. La estructura del directorio de tu aplicación parece estar bien según la información proporcionada. Sin embargo, debes asegurarte de que los archivos go.mod y go.sum estén actualizados y contengan todas las dependencias requeridas.

    4. Si las soluciones anteriores no funcionan, intenta agregar un archivo heroku.yml al directorio raíz de tu aplicación. Puedes utilizar el archivo de ejemplo proporcionado en el repositorio go-getting-started mencionado anteriormente. Este archivo especifica opciones de configuración adicionales para Heroku, incluyendo el buildpack.

      build:
        docker:
          web: Dockerfile
        config:
          GO_VERSION: 1.17
          GO_INSTALL_PACKAGE_SPEC: 'github.com/ejemplo/app'
      

      Modifica el valor de GO_INSTALL_PACKAGE_SPEC para que coincida con la ubicación del paquete de tu aplicación.

    Esperemos que una de estas soluciones funcione para ti.

Comments are closed.