Merge pull request 'dev' (#3) from dev into master

Reviewed-on: https://gitea.185.187.169.109.nip.io/Proyecto-SaaS/django-core-base/pulls/3
This commit is contained in:
2026-04-11 14:57:47 +02:00
3 changed files with 46 additions and 32 deletions

View File

@@ -1,2 +1,6 @@
# django-core-base # django-core-base

View File

@@ -1,35 +1,40 @@
pipeline { pipeline {
agent any agent any
environment {
// Valores iniciales por seguridad
CONTAINER_NAME = "django_app_dev"
PORT = "8000"
DEBUG_MODE = "1"
}
stages { stages {
stage('Limpieza y Preparación') { stage('Configurar Entorno') {
steps { steps {
echo 'Bajando la versión anterior para actualizar...' script {
// Añadimos -f para apuntar al archivo dentro de deployments if (env.BRANCH_NAME == 'master') {
sh 'docker compose -f deployments/docker-compose.yml down || true' echo "--- CONFIGURANDO MODO PRODUCCIÓN (MASTER) ---"
env.CONTAINER_NAME = "django_app_master"
env.PORT = "8001"
env.DEBUG_MODE = "0"
} else if (env.BRANCH_NAME == 'dev') {
echo "--- CONFIGURANDO MODO DESARROLLO (DEV) ---"
env.CONTAINER_NAME = "django_app_dev"
env.PORT = "8000"
env.DEBUG_MODE = "1"
}
}
} }
} }
stage('Construcción (Build)') { stage('Despliegue') {
steps { when {
echo 'Construyendo la imagen de la API Django...' anyOf { branch 'dev'; branch 'master' }
// Añadimos -f para apuntar al archivo dentro de deployments
sh 'docker compose -f deployments/docker-compose.yml build'
} }
}
stage('Despliegue (Deploy)') {
steps { steps {
echo 'Arrancando el contenedor en producción...' echo "Desplegando contenedor: ${env.CONTAINER_NAME} en puerto: ${env.PORT}"
// Añadimos -f para apuntar al archivo dentro de deployments // Ahora Docker Compose sí recibirá los valores correctamente
sh 'docker compose -f deployments/docker-compose.yml up -d' sh "docker compose -f deployments/docker-compose.yml up -d --build"
}
}
stage('Verificación') {
steps {
echo 'Listando contenedores activos:'
sh 'docker ps'
} }
} }
} }

View File

@@ -1,14 +1,19 @@
version: '3.8'
networks:
# Usamos la red que creamos al principio para que el Proxy lo vea
frontend:
external: true
services: services:
web: web:
build: build:
context: .. # IMPORTANTE: Los dos puntos suben a la raíz para ver core y apps context: ..
dockerfile: deployments/Dockerfile dockerfile: deployments/Dockerfile
container_name: django_app_dev container_name: ${CONTAINER_NAME}
restart: always restart: always
environment:
- DEBUG=${DEBUG_MODE}
- DATABASE_URL=postgres://gitea:gitea_password@db:5432/gitea
networks:
- frontend
ports:
- "${PORT}:8000"
# --- ESTA ES LA PARTE QUE FALTABA ---
networks:
frontend:
driver: bridge