name: app

type: php:7.3

dependencies:
    php:
        composer/composer: "^2"

runtime:
    extensions:
        - apcu
        - blackfire
        - ctype
        - iconv
        - mbstring
        - pdo_pgsql
        - sodium
        - xsl
        


build:
    flavor: none

disk: 1024

web:
    locations:
        "/":
            root: "public"
            expires: 1h
            passthru: "/index.php"

mounts:
    "/var": { source: local, source_path: var }
    

relationships:
    database: "database:postgresql"
    
hooks:
    build: |
        set -x -e

        curl -fs https://get.symfony.com/cloud/configurator | bash
        
        NODE_VERSION=18 symfony-build

    deploy: |
        set -x -e

        symfony-deploy

crons:
    security-check:
        # Check that no security issues have been found for PHP packages deployed in production
        # See https://github.com/fabpot/local-php-security-checker
        spec: '50 23 * * *'
        cmd: if [ "$PLATFORM_ENVIRONMENT_TYPE" = "production" ]; then croncape php-security-checker; fi

workers:
    messenger:
        commands:
            # Consume "async" messages (as configured in the routing section of config/packages/messenger.yaml)
            start: symfony console --time-limit=3600 --memory-limit=64M messenger:consume async
