Corrections et essais de déploiement

This commit is contained in:
Erwann PHILIPPE 2026-01-29 10:19:50 +01:00
parent 7ee5260495
commit 2d96eaf76d
5 changed files with 49 additions and 66 deletions

6
.env
View file

@ -15,15 +15,15 @@
# https://symfony.com/doc/current/best_practices.html#use-environment-variables-for-infrastructure-configuration
###> symfony/framework-bundle ###
APP_ENV=dev
APP_SECRET=2e01220a8dcfad7ad0c1c01450810ccc
#APP_ENV=dev
#APP_SECRET=2e01220a8dcfad7ad0c1c01450810ccc
###< symfony/framework-bundle ###
###> doctrine/doctrine-bundle ###
# Format described at https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url
# IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml
#
DATABASE_URL="mysql://root:@127.0.0.1:3307/mediatekformation"
#DATABASE_URL="mysql://root:@127.0.0.1:3306/mediatekformation"
###< doctrine/doctrine-bundle ###
###> symfony/messenger ###

View file

@ -1,70 +1,23 @@
# Docs for the Azure Web Apps Deploy action: https://github.com/Azure/webapps-deploy
# More GitHub Actions for Azure: https://github.com/Azure/actions
name: Build and deploy PHP app to Azure Web App - MediatekFormation
on:
push:
branches:
- main
workflow_dispatch:
name: Deploy website on push
jobs:
build:
web-deploy:
name: Deploy
runs-on: ubuntu-latest
permissions:
contents: read #This is required for actions/checkout
steps:
- uses: actions/checkout@v4
- name: Get latest code
uses: actions/checkout@v2
- name: Setup PHP
uses: shivammathur/setup-php@v2
- name: Sync files
uses: SamKirkland/FTP-Deploy-Action@4.3.0
with:
php-version: '8.3'
- name: Check if composer.json exists
id: check_files
uses: andstor/file-existence-action@v1
with:
files: 'composer.json'
- name: Run composer install if composer.json exists
if: steps.check_files.outputs.files_exists == 'true'
run: composer validate --no-check-publish && composer install --prefer-dist --no-progress
server: waws-prod-par-019.ftp.azurewebsites.windows.net
server-dir: /site/wwwroot/
username: MediatekFormation\$MediatekFormation
password: WyQq4m7L6gnW61BXk80sAry9hxw5KWT8pe82BZboYvSv4hxaXX4QAB1rWsH4
- name: Upload artifact for deployment job
uses: actions/upload-artifact@v4
with:
name: php-app
path: .
deploy:
runs-on: ubuntu-latest
needs: build
permissions:
id-token: write #This is required for requesting the JWT
contents: read #This is required for actions/checkout
steps:
- name: Download artifact from build job
uses: actions/download-artifact@v4
with:
name: php-app
- name: Login to Azure
uses: azure/login@v2
with:
client-id: ${{ secrets.AZUREAPPSERVICE_CLIENTID_A719FE93D3EB4414949C6CAF8193553C }}
tenant-id: ${{ secrets.AZUREAPPSERVICE_TENANTID_5483ED41772946778B575CE3B411E9E2 }}
subscription-id: ${{ secrets.AZUREAPPSERVICE_SUBSCRIPTIONID_E1296DA9E7994ED7A77ED1A24C7EAF93 }}
- name: 'Deploy to Azure Web App'
uses: azure/webapps-deploy@v3
id: deploy-to-webapp
with:
app-name: 'MediatekFormation'
slot-name: 'Production'
package: .

27
default Normal file
View file

@ -0,0 +1,27 @@
server {
listen 8080;
listen [::]:8080;
root /home/site/wwwroot/public; # <-- On pointe sur public
index index.php;
server_name example.com;
location / {
# Indispensable pour Symfony : redirige tout vers index.php
try_files $uri /index.php$is_args$args;
}
location ~ ^/index\.php(/|$) {
fastcgi_pass 127.0.0.1:9000;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $document_root;
internal;
}
location ~ \.php$ {
return 404;
}
error_log /var/log/nginx/project_error.log;
access_log /var/log/nginx/project_access.log;
}

View file

@ -32,6 +32,9 @@
</select>
</form>
</th>
<th>
Détail
</th>
<th class="text-center align-top" scope="col">
Nb résultats
<a href="{{ path('playlists.sort', {champ:'nbResult', ordre:'ASC'}) }}" class="btn btn-info btn-sm active" role="button" aria-pressed="true"><</a>

View file

@ -1,6 +1,6 @@
{% extends 'base.html.twig' %}
{% block title %}Log in!{% endblock %}
{% block title %}Se connecter !{% endblock %}
{% block body %}
<form method="post">
@ -10,19 +10,19 @@
{% if app.user %}
<div class="mb-3">
You are logged in as {{ app.user.userIdentifier }}, <a href="{{ logout_path() }}">Logout</a>
Vous êtes connecté en tant que {{ app.user.userIdentifier }}, <a href="{{ logout_path() }}">Déconnexion</a>
</div>
{% endif %}
<h1 class="h3 mb-3 font-weight-normal">Please sign in</h1>
<label for="inputUsername">Username</label>
<label for="inputUsername">Nom d'utilisateur</label>
<input type="text" value="{{ last_username }}" name="username" id="inputUsername" class="form-control" autocomplete="username" required autofocus>
<label for="inputPassword">Password</label>
<label for="inputPassword">Mot de passe</label>
<input type="password" name="password" id="inputPassword" class="form-control" autocomplete="current-password" required>
<input type="hidden" name="_csrf_token" data-controller="csrf-protection" value="{{ csrf_token('authenticate') }}">
<button class="btn btn-lg btn-primary" type="submit">
Sign in
Se connecter
</button>
</form>
{% endblock %}