MIGRATION VERS GITEA

This commit is contained in:
mathis committed 2026-08-25 01:23:13 +02:00
commit 5f9d991c15
333 files changed
+108514

No files matched your search

+1
View File
@@ -0,0 +1 @@
v2.84.2
+1
View File
@@ -0,0 +1 @@
v2.188.1
+1
View File
@@ -0,0 +1 @@
{"ref":"snkpkkewlpetcqhfxotm","name":"Admin Panel App Régionales / Nationales","organization_id":"ixlajizdkqyvdstmlwml","organization_slug":"ixlajizdkqyvdstmlwml"}
+1
View File
@@ -0,0 +1 @@
postgresql://postgres.snkpkkewlpetcqhfxotm@aws-1-eu-west-1.pooler.supabase.com:5432/postgres
+1
View File
@@ -0,0 +1 @@
17.6.1.063
+1
View File
@@ -0,0 +1 @@
snkpkkewlpetcqhfxotm
+1
View File
@@ -0,0 +1 @@
v14.1
+1
View File
@@ -0,0 +1 @@
operation-ergonomics
+1
View File
@@ -0,0 +1 @@
v1.48.20
Whitespace-only changes.
Whitespace-only changes.
@@ -0,0 +1,7 @@
-- MIGRATION : Ajout de la colonne quais_hall (JSONB) dans la table gares
ALTER TABLE public.gares
ADD COLUMN IF NOT EXISTS quais_hall JSONB DEFAULT '{"hall": {}}'::jsonb;
COMMENT ON COLUMN public.gares.quais_hall IS
'Association des quais aux halls sous forme JSON : {"hall": {"Nom du Hall": ["Quai 1", "Quai 2"]}}';
@@ -0,0 +1,31 @@
-- Migration: 20260611000000_secure_all_tables.sql
-- Description: Enable RLS on all public tables and restrict INSERT/UPDATE/DELETE to authenticated users.
DO $$
DECLARE
r RECORD;
BEGIN
FOR r IN SELECT tablename FROM pg_tables WHERE schemaname = 'public'
LOOP
-- Enable RLS
EXECUTE 'ALTER TABLE public.' || quote_ident(r.tablename) || ' ENABLE ROW LEVEL SECURITY;';
-- Clean up existing potentially insecure policies to be sure
EXECUTE 'DROP POLICY IF EXISTS "Public read access" ON public.' || quote_ident(r.tablename) || ';';
EXECUTE 'DROP POLICY IF EXISTS "Enable insert for authenticated users only" ON public.' || quote_ident(r.tablename) || ';';
EXECUTE 'DROP POLICY IF EXISTS "Enable update for authenticated users only" ON public.' || quote_ident(r.tablename) || ';';
EXECUTE 'DROP POLICY IF EXISTS "Enable delete for authenticated users only" ON public.' || quote_ident(r.tablename) || ';';
-- Read policy (SELECT): Allow public read
EXECUTE 'CREATE POLICY "Public read access" ON public.' || quote_ident(r.tablename) || ' FOR SELECT USING (true);';
-- Insert policy: Allow anon (app uses custom auth, no Supabase Auth)
EXECUTE 'CREATE POLICY "Public insert access" ON public.' || quote_ident(r.tablename) || ' FOR INSERT WITH CHECK (true);';
-- Update policy: Allow anon
EXECUTE 'CREATE POLICY "Public update access" ON public.' || quote_ident(r.tablename) || ' FOR UPDATE USING (true);';
-- Delete policy: Prevent hard deletion for everyone (prevents third party deletion)
EXECUTE 'CREATE POLICY "Prevent hard deletion" ON public.' || quote_ident(r.tablename) || ' FOR DELETE USING (false);';
END LOOP;
END $$;
@@ -0,0 +1,27 @@
-- Migration: 20260611000001_fix_secure_all_tables.sql
-- Description: Fix RLS policies to allow public insert/update since app uses custom auth, but strictly prevent delete.
DO $$
DECLARE
r RECORD;
BEGIN
FOR r IN SELECT tablename FROM pg_tables WHERE schemaname = 'public'
LOOP
-- Clean up the overly restrictive policies from previous migration
EXECUTE 'DROP POLICY IF EXISTS "Enable insert for authenticated users only" ON public.' || quote_ident(r.tablename) || ';';
EXECUTE 'DROP POLICY IF EXISTS "Enable update for authenticated users only" ON public.' || quote_ident(r.tablename) || ';';
EXECUTE 'DROP POLICY IF EXISTS "Enable delete for authenticated users only" ON public.' || quote_ident(r.tablename) || ';';
-- Insert policy: Allow anon (app uses custom auth, no Supabase Auth)
EXECUTE 'DROP POLICY IF EXISTS "Public insert access" ON public.' || quote_ident(r.tablename) || ';';
EXECUTE 'CREATE POLICY "Public insert access" ON public.' || quote_ident(r.tablename) || ' FOR INSERT WITH CHECK (true);';
-- Update policy: Allow anon
EXECUTE 'DROP POLICY IF EXISTS "Public update access" ON public.' || quote_ident(r.tablename) || ';';
EXECUTE 'CREATE POLICY "Public update access" ON public.' || quote_ident(r.tablename) || ' FOR UPDATE USING (true);';
-- Delete policy: Prevent hard deletion for everyone (prevents third party deletion)
EXECUTE 'DROP POLICY IF EXISTS "Prevent hard deletion" ON public.' || quote_ident(r.tablename) || ';';
EXECUTE 'CREATE POLICY "Prevent hard deletion" ON public.' || quote_ident(r.tablename) || ' FOR DELETE USING (false);';
END LOOP;
END $$;
@@ -0,0 +1,10 @@
-- ============================================================================
-- MIGRATION : types_train — ajout de la colonne "logo_color_url"
--
-- Ajoute une colonne "logo_color_url" pour stocker l'URL du logo en couleur.
--
-- À exécuter dans : Supabase Dashboard > SQL Editor
-- ============================================================================
ALTER TABLE "public"."types_train"
ADD COLUMN IF NOT EXISTS "logo_color_url" text;
@@ -0,0 +1,32 @@
-- ============================================================================
-- MIGRATION : info_gares — gare_ids uuid[] + ligne_ids uuid[]
--
-- Remplace les colonnes scalaires gare_id / ligne_id par des colonnes tableau
-- afin d'autoriser plusieurs gares et plusieurs lignes par info.
--
-- À exécuter dans : Supabase Dashboard > SQL Editor
-- ============================================================================
-- 1. Ajouter les nouvelles colonnes tableaux (nullables, par défaut vide)
ALTER TABLE "public"."info_gares"
ADD COLUMN IF NOT EXISTS "gare_ids" uuid[] NOT NULL DEFAULT '{}',
ADD COLUMN IF NOT EXISTS "ligne_ids" uuid[] NOT NULL DEFAULT '{}';
-- 2. Migrer les données existantes depuis les colonnes scalaires
UPDATE "public"."info_gares"
SET
gare_ids = CASE WHEN gare_id IS NOT NULL THEN ARRAY[gare_id] ELSE '{}' END,
ligne_ids = CASE WHEN ligne_id IS NOT NULL THEN ARRAY[ligne_id] ELSE '{}' END
WHERE deleted_at IS NULL;
-- 3. Supprimer les anciennes colonnes scalaires
-- (décommentez les lignes ci-dessous après avoir vérifié la migration)
-- ALTER TABLE "public"."info_gares" DROP COLUMN IF EXISTS "gare_id";
-- ALTER TABLE "public"."info_gares" DROP COLUMN IF EXISTS "ligne_id";
-- NOTE : les colonnes gare_id / ligne_id sont conservées pour l'instant.
-- Après validation, décommentez le bloc DROP COLUMN ci-dessus et ré-exécutez.
-- 4. Index GIN pour de meilleures performances sur les requêtes @> (contient)
CREATE INDEX IF NOT EXISTS idx_info_gares_gare_ids ON "public"."info_gares" USING GIN (gare_ids);
CREATE INDEX IF NOT EXISTS idx_info_gares_ligne_ids ON "public"."info_gares" USING GIN (ligne_ids);
@@ -0,0 +1,12 @@
-- ============================================================================
-- MIGRATION : info_gares — ajout de la colonne "type"
--
-- Ajoute une colonne "type" pour catégoriser les infos gares.
-- Les valeurs possibles sont gérées côté applicatif :
-- 'Information', 'Avertissement', 'Alerte', 'Urgence', 'Alerte Méteo'
--
-- À exécuter dans : Supabase Dashboard > SQL Editor
-- ============================================================================
ALTER TABLE "public"."info_gares"
ADD COLUMN IF NOT EXISTS "type" text NOT NULL DEFAULT 'Information';
@@ -0,0 +1,42 @@
-- ============================================================================
-- FIX RLS : table info_gares
--
-- La table info_gares a RLS activé mais aucune policy n'est définie,
-- ce qui bloque toutes les opérations (INSERT, UPDATE, DELETE, SELECT).
--
-- Ce script suit le même pattern que les autres tables du projet
-- (menus_regionaux, parametres) : accès ouvert à tous les rôles
-- utilisant la clé anon/service (gestion côté application).
--
-- À exécuter dans : Supabase Dashboard > SQL Editor
-- ============================================================================
-- 1. S'assurer que RLS est bien activé sur la table
ALTER TABLE "public"."info_gares" ENABLE ROW LEVEL SECURITY;
-- 2. Supprimer les éventuelles policies existantes (idempotent)
DROP POLICY IF EXISTS "info_gares_select" ON "public"."info_gares";
DROP POLICY IF EXISTS "info_gares_insert" ON "public"."info_gares";
DROP POLICY IF EXISTS "info_gares_update" ON "public"."info_gares";
DROP POLICY IF EXISTS "info_gares_delete" ON "public"."info_gares";
-- 3. Créer les 4 policies CRUD (lecture, insertion, modification, suppression)
CREATE POLICY "info_gares_select"
ON "public"."info_gares"
FOR SELECT
USING (true);
CREATE POLICY "info_gares_insert"
ON "public"."info_gares"
FOR INSERT
WITH CHECK (true);
CREATE POLICY "info_gares_update"
ON "public"."info_gares"
FOR UPDATE
USING (true);
CREATE POLICY "info_gares_delete"
ON "public"."info_gares"
FOR DELETE
USING (true);
File diff suppressed because it is too large. Load diff