%@ 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 %>
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
<%
if (intMensaje == 1){
%>
<%=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)");
%>