Especifica dependencias

Composer se ejecuta de manera automática cuando implementas una versión nueva de tu aplicación. Solo agrega la siguiente línea a la parte superior de tus secuencias de comandos de PHP para solicitar el archivo autoload.php:

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

Composer agrega los paquetes al directorio vendor/ de tu app, en el que se genera el archivo autoload.php. El cargador automático de Composer carga las clases instaladas sin una declaración require para cada archivo.

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

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

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

Puedes usar cualquier paquete de PHP compatible con Linux en App Engine. El entorno de ejecución busca un archivo composer.json en el directorio fuente de tu aplicación y usa composer para instalar cualquier dependencia 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. Usa el siguiente comando para instalar una versión de la dependencia no almacenada en caché:

gcloud app deploy --no-cache

Instala y ejecuta dependencias de forma local

Usa Composer para instalar las dependencias de forma local:

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

Puedes probar la aplicación con tu servidor web de preferencia. Para ejecutar la aplicación con rapidez, puedes usar el servidor web integrado de PHP.

Instala un marco de trabajo web

De forma predeterminada, App Engine entrega todas las solicitudes a través del archivo public/index.php o index.php. No se requiere un framework, pero sí se recomienda. Puedes usar cualquier marco de trabajo web con App Engine, como los siguientes:

Instala bibliotecas cliente de Cloud

La biblioteca cliente de Google Cloud para PHP es una biblioteca cliente que permite acceder a los servicios de Google Cloud y reduce el código estándar que debes escribir. La biblioteca proporciona abstracciones de API de alto nivel y fáciles de entender. Admite expresiones idiomáticas de PHP, funciona bien con la biblioteca estándar y tiene una mayor integración con tu base de código. Con todo esto, se logra que pases más tiempo creando el código que te interesa.

  1. Instala la biblioteca de forma local:

    composer require google/cloud
    
  2. Puedes usar Google Cloud CLI para controlar la autenticación de forma local. Si deseas que la aplicación local use de forma temporal tus propias credenciales de usuario para el acceso a la API, ejecuta lo siguiente:

    gcloud auth application-default login
    

    Si quieres obtener más información sobre cómo configurar las bibliotecas cliente de Cloud para PHP con el fin de controlar la autenticación de manera automática, consulta Autentica los servicios de Cloud mediante bibliotecas cliente.

Usa repositorios privados

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

  • Configurar el repositorio
  • Proporcionar 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 mediante vcs según el tipo:

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

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

Puedes obtener el token de autenticación de GitHub desde la IU de administración de GitHub.

A continuación, se muestra otro ejemplo en el que se detalla cómo acceder a un repositorio privado de Bitbucket.

  1. Configura el repositorio en composer.json mediante vcs según el tipo:

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

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