Especificar dependencias

Composer se ejecuta automáticamente cuando implementas una nueva versión de tu aplicación. Solo tienes que añadir la siguiente línea a la parte superior de tus secuencias de comandos PHP para requerir el archivo autoload.php:

require_once __DIR__ . '/vendor/autoload.php';

Composer añade los paquetes al directorio vendor/ de tu aplicación, donde se genera el archivo autoload.php. El cargador automático de Composer carga automáticamente las clases instaladas por Composer sin una instrucción require para cada archivo.

De forma predeterminada, el directorio vendor/ se ignora en el archivo .gcloudignore generado para reducir el número de archivos enviados en la implementación.

Puedes declarar dependencias de PHP en un archivo composer.json estándar. Por ejemplo:

{
    "require": {
        "google/cloud": "^0.72"
    }
}

Puedes usar cualquier paquete PHP compatible con Linux en App Engine. El tiempo de ejecución busca un archivo composer.json en el directorio de origen de tu aplicación y usa composer para instalar las dependencias antes de iniciar la aplicación.

Las secuencias de comandos definidas en el archivo composer.json no se ejecutarán cuando Composer pueda usar un resultado almacenado en caché.

De forma predeterminada, App Engine almacena en caché las dependencias obtenidas para reducir los tiempos de compilación. Para instalar una versión sin caché de la dependencia, usa el comando:

gcloud app deploy --no-cache

Instalar y ejecutar de forma local

Usa composer para instalar las dependencias de forma local:

composer install
Para fijar las dependencias en su versión actual, confirma el archivo composer.lock en tu aplicación.

Puedes probar tu aplicación con el servidor web que elijas. Para ejecutar rápidamente tu aplicación, puedes usar el servidor web integrado de PHP.

Instalar un framework web

De forma predeterminada, App Engine sirve todas las solicitudes a través del archivo public/index.php o index.php. No es obligatorio indicar un framework, pero es recomendable. Puedes usar cualquier framework web con App Engine, incluidos los siguientes:

Instalar las bibliotecas de cliente de Cloud

La biblioteca de cliente de Google Cloud para PHP es una biblioteca de cliente para acceder a los servicios de Google Cloud , que reduce el código repetitivo que tienes que escribir. La biblioteca proporciona abstracciones de API de alto nivel y fáciles de entender. Se adapta a las expresiones idiomáticas de PHP, funciona bien con la biblioteca estándar y se integra mejor con tu base de código. Todo esto significa que puedes dedicar más tiempo a crear el código que te importa.

  1. Instala la biblioteca localmente:

    composer require google/cloud
    
  2. Puedes gestionar la autenticación de forma local mediante la CLI de Google Cloud. Si quieres que tu aplicación local use temporalmente tus propias credenciales de usuario para acceder a la API, ejecuta el siguiente comando:

    gcloud auth application-default login
    

    Para obtener información sobre cómo configurar las bibliotecas de cliente de Cloud para PHP de forma que gestionen la autenticación automáticamente, consulta el artículo Autenticarse en servicios de Cloud con bibliotecas de cliente.

Usar repositorios privados

Para usar bibliotecas en repositorios privados, debes completar las siguientes tareas:

  • Configura el repositorio.
  • Proporciona a composer el secreto para acceder al repositorio privado.

En el siguiente ejemplo se muestra cómo acceder a un repositorio privado en GitHub.

  1. Configura el repositorio en composer.json usando vcs para el tipo:

    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/username/private_package"
        }
    ]
    
  2. Crea un archivo llamado auth.json en el directorio raíz de tu proyecto:

    {
        "github-oauth": {
            "github.com": "<your-github-auth-token>"
        }
    }
    

Puedes obtener el token de autenticación de GitHub en la interfaz de usuario administrativa de GitHub.

Aquí tienes otro ejemplo que muestra cómo acceder a un repositorio privado de Bitbucket.

  1. Configura el repositorio en composer.json usando vcs para el tipo:

    "repositories": [
        {
            "type": "vcs",
            "url":  "https://bitbucket.org/username/private_git"
        }
    ]
    
  2. Crea un archivo llamado auth.json en el directorio raíz de tu proyecto:

    {
        "bitbucket-oauth": {
            "bitbucket.org": {
                "consumer-key": "<your-oauth-consumer-key>",
                "consumer-secret": "<your-oauth-consumer-secret>"
            }
        }
    }