<%@ page import="com.tarisan.control.*" %> <%@ page import="com.tarisan.data.*" %> <%@ page import="com.tarisan.excepcion.*" %> <%@ page import="com.tarisan.log.*" %> <%@ page import="com.tarisan.util.Utilidades" %> <%@ page import="java.sql.*" %> <%@ page import="java.util.Vector" %> <%@ page import="java.io.BufferedWriter" %> <%@ page import="java.io.File" %> <%@ page import="java.io.FileWriter" %> <%@ page import="java.io.IOException" %> <% LogTarisan.logger.log(NivelLog.INFO, "Inicio página de poner cambios en producción (adm/poner_en_produccion.jsp)"); response.setHeader("Expires", "0"); response.setHeader("Pragma", "no-cache"); response.setHeader("Cache-Control", "no-cache"); HttpSession sesion = request.getSession(true); if(sesion.isNew() || (sesion.getAttribute("USUARIO") == null)) { LogTarisan.logger.log(NivelLog.INFO, "Sesión invalidada"); response.sendRedirect("../../html/login.html"); } else { try { //Obtención del perfil del usuario conectado StringBuffer perfil = new StringBuffer(); perfil.append("|"); perfil.append(sesion.getAttribute("PERFIL")); perfil.append("|"); // Definicion de variables String strParametroMenu = ""; int intCrearArchivo = 0; int intPagina = 0; int intMensaje = 0; String strMensaje = ""; //Obtenemos los valores de los parametros que se pasan a la pagina //En caso de que no se le pasen parametros, quedaram inicializados //a sus valores por defecto //parametro x para marcar la opcion del menu en la que se encuentra el usuario if (request.getParameter("x")!=null) strParametroMenu=(String)request.getParameter("x"); //parametro crearArchivo if (request.getParameter("crearArchivo")!=null) intCrearArchivo=Integer.parseInt(request.getParameter("crearArchivo")); boolean mostrarNoticia = true; PersistenciaTanoticias perTaNo = new PersistenciaTanoticias(); Vector vSeleccionNot = perTaNo.obtener_noticias_cabecera(); Vector vNoticias = new Vector(); String strNoticia = ""; String noticias =""; String separador = " ---//--- "; if(vSeleccionNot.size()==0){ mostrarNoticia = false; }else{ mostrarNoticia = true; Tanoticias tanoticia = null; for(int i = 0; i < vSeleccionNot.size(); i++) { tanoticia = (Tanoticias)vSeleccionNot.elementAt(i); if (i!=0){ strNoticia = strNoticia + separador + tanoticia.getNoticia(); }else{ strNoticia = tanoticia.getNoticia(); } strNoticia = strNoticia.replaceAll("
", " "); } } //Lo pongo a false para que no salga la noticia mostrarNoticia = false; if (intCrearArchivo==1){ String ruta = "/tmp/ponerCambios/semaforo.txt"; File archivo = new File(ruta); BufferedWriter bw; if(archivo.exists()) { intMensaje = 1; strMensaje = "¡El archivo ya existe!"; } else { bw = new BufferedWriter(new FileWriter(archivo)); bw.write("Este archivo indica que hay cambios para poner en Tarisan. "); bw.write("Por la noche se ejecutará un corntab que subirá los cambios a producción. "); bw.write("El crontab ejecuta /root/tarisan_en_produccion_crontab.sh"); bw.close(); intMensaje = 1; strMensaje = "¡Archivo creado correctamente!"; } } %> Mantenimiento de Analíticas
<%= sesion.getAttribute("USUARIO") %>

<%=strNoticia %>


<% if (intMensaje == 1){ %> <% } %>

PONER CAMBIOS EN PRODUCCIÓN

Genera el archivo /tmp/ponerCambios/semaforo.txt. Hay un crontab que se ejecuta cada noche y sube los cambios simepre que encuentre el archivo.

El crontab ejecuta el archivo /root/tarisan_en_produccion_crontab.sh

<%=strMensaje %>

<% } catch(Exception ex) { LogTarisan.logger.log(NivelLog.ERROR, "Exception: " + ex); sesion.setAttribute("ERROR", "Error en la presentación de la página al usuario."); response.sendRedirect("../error.jsp"); } } LogTarisan.logger.log(NivelLog.INFO, "Final página de poner cambios en producción (adm/poner_en_produccion.jsp)"); %>