Aside

LAMPP


Instalación y configuración LAMPP

PRERREQUISITOS

1. Crear un usuario aplicativo lampp

sudo adduser lampp –disabled­login

2. Crear un FS para la instalación de xampp en /opt/lampp

sudo vi /etc/fstab
/dev/xvdb  /opt/lampp  ext4  defaults 1

INSTALACIÓN

Descarga la versión que corresponda de 32-bits o de 64-bits desde sourceforge
Cambiamos los permisos al instalador

chmod 755 xampp­linux­*­installer.run

Ejecutamos el instalador

sudo ./xampp­linux­*­installer.run

lampp

Creamos un grupo y agregamos los usuarios lampp, myuserid que podrán desplegar apps en el servidor.

sudo groupadd xamppusers
sudo usermod ­G xamppusers lampp

Asignamos permisos de escritura al folder htdocs/ para el grupo xamppusers.

cd /opt/lampp
chown root.xamppusers htdocs
chmod 775 htdocs

Actualizamos  el archivo /opt/lampp/apache2/conf/httpd.conf de acuerdo a lo que abajo se indica, puntualizo que la línea que se añade es la de Allow from all.

Alias /bitnami/ "/opt/lampp/apache2/htdocs/"
Alias /bitnami "/opt/lampp/apache2/htdocs"

<Directory "/opt/lampp/apache2/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

Copiamos la aplicación de prueba en el folder /opt/lampp/htdocs. Editamos el archivo google-chrome en /opt/google/chrome y agregamos a la antepenúltima línea lo que se indica abajo con user­data­dir $HOME.

vi google - chrome
­­

google

Ejecutamos nuevamente chrome y abrimos la liga que abajo se indica.
http://localhost/appTest/

REFERENCIAS

Result-Only Work Environment (ROWE)


En alguna entrevista de trabajo me preguntaban cuáles son las estrategias que uso para llevar con éxito un Proyecto, una de ellas en mi experiencia es, combinar Scrum y llevar a cabo la gestión del proyecto bajo el marco definidos por el PMI; sin embargo, casi siempre es una inquietud de mis entrevistadores, el cómo se logra en una cultura como la mexicana, no tener “mano dura” y con todo lograr que las personas alcancen sus objetivos, algo que comento es que finalmente podemos constatar que la manera “tradicional” no sólo ha generado una crisis en las TIs con porcentajes de más del 80%  de retrasos en la entrega y proyectos inconclusos, lo que originó la necesidad de nuevas metodologías como la de Scrum, que sin entrar en más detalles Scrum toca el tema de fondo, y es la necesidad de personas cualificadas, así es, en qué? ese es otro tema, del cual sólo vale la pena comentar, que un equipo altamente capacitado y pobremente cualificado, está altamente propenso a terminar siendo uno de tantos proyectos con grandes atrasos, muchas otras extras, etc, etc; claro, a menos que éste sea un Proyecto individual, que desde luego no es el caso, razón de más para tomarse unos minutos en evaluar otra dirección en la típica forma de gestionar.
El fragmente del artículo que abajo anoto, apunta a otra de las claves en el éxito de cualquier proyecto, espero se den el tiempo para leer el artículo y dejarme sus comentarios, buen día.

The next generation wants to work this way naturally. They start off entrepreneurial and nimble, and they know how to work fast and communicate globally. Growing up, they did more group project than the rest of did. They know how to drive an outcome.Now, they’re entering an old-fashioned, 20th century system, and what we’re telling them doesn’t fit with how they think and how they move stuff along. Millennials are motivated. If you’re clear with them about what they need to deliver, they’re going to do it every time. But if you say, “Shut up. Get in your cube. And don’t forget to go to the team-building event at 3,” you’re going to lose them.They may stay for a while, but they will be complacent, unmotivated and uninspired. Then, they will start looking elsewhere for a progressive organization. They’re not going to waste their time sitting around for eight hours, just because somebody said that that’s how work is supposed to happen. They will start looking for an organization that’s first and foremost interested in the results they can — and will — deliver.” – Pavao K.

http://www.oracle.com/us/corporate/profit/opinion/022013-jthompson-1910615.html?goback=%2Egde_4636455_member_218426203
 

 

Configuring Sprint Dashboard


 

2   Sprint Board

2.1        Steps Description

 

  • The steps defined below shall be met in their entirety.

 

Step Description
Create Custom Page Click the Home icon to display the Create Custom Page option (fig. 1).
Configure Page Name Write the page name in Page Name field, check Iteration option and click Save and Close button (fig. 2).
Add application Select Start Adding Apps option (fig. 3).
Select application Select Kanban Board option and click Add This App (fig. 4).
Configure Swimlanes Select Settings icon and click Settings option (fig. 5). Check Swinlanes and select Owner list option (fig. 6)
Ready to go. Verify your assignments (fig. 7).

1
Fig. 1

4

Fig. 2

2

Fig. 3

3

Fig. 4

 5

Fig. 5 

6

 Fig. 6

7

Fig. 7

CONFIGURING USER STORY CARDS

Steps Description

 

Step Description
Display the Card’s Data List Click the Show on Cards icon to display the Card’s data list (fig. 1).
Select the Card’s Data Verify that only are selected the options listed below and click Apply button (fig. 2).

9a

Fig. 1

  • Defects (User Story)
  • Feature (User Story)
  • In Progress Date
  • Schedule State
  • State (Defect)
  • Task Est
  • Tasks
  • Test Cases

9

Fig. 2

10

Fig. 3

Configuring Release Dashboard

Apache Tomcat


Instalación Java 8
sudo apt-get install oracle-java8-installer

Configuración

wget http://www.eu.apache.org/dist/tomcat/tomcat-8/v8.0.32/bin/apache-tomcat-8.0.32.tar.gz

Copiamos los archivos a las ubicaciones que se listan y copia de los jars a ext de cuerdo a la imagen anterior.

Desde: target/tomcat8x

  1. shared/lib/*.jar

  2. conf/context.xml

  3. conf/catalina.properties

  4. common/lib/*.jar

Hacia /opt/apache-tomcat-8.0.32/lib/ext y /opt/apache-tomcat-8.0.32/lib/conf

cp /CODIGO/workspace/myhippoproject/target/tomcat8x/conf/catalina.properties /opt/apache-tomcat-8.0.32/conf/
cp /CODIGO/workspace/myhippoproject/target/tomcat8x/conf/context.xml /opt/apache-tomcat-8.0.32/conf/
cp /CODIGO/workspace/myhippoproject/target/tomcat8x/common/lib/*.jar /opt/apache-tomcat-8.0.32/lib/ext/
cp /CODIGO/workspace/myhippoproject/target/tomcat8x/shared/lib/*.jar /opt/apache-tomcat-8.0.32/lib/ext/

Configuración VARS ENV

source /.profile

export JAVA_HOME=/usr/lib/jvm/java-8-oracle

export PATH=$PATH:$JAVA_HOME

export MAVEN_HOME=/usr/share/maven

export M2_HOME=/usr/share/maven

export PATH=$PATH:$MAVEN_HOME/bin:$M2_HOME/bin

export CATALINA_HOME=/opt/apache-tomcat-8.0.32

export CATALINA_BASE=$CATALINA_HOME

export PATH=$PATH:$CATALINA_HOME/bin:$CATALINA_BASE/bin

echo $CATALINA_HOME/bin

cd $CATALINA_HOME/bin

tar xvfz commons-daemon-native.tar.gz

cd commons-daemon-1.0.15-native-src/

cd unix

./configure

make

./bin/jsvc -classpath $CATALINA_HOME/bin/bootstrap.jar:$CATALINA_HOME/bin/tomcat-juli.jar -outfile $CATALINA_BASE/logs/catalina.out -errfile $CATALINA_BASE/logs/catalina.err -Dcatalina.home=$CATALINA_HOME -Dcatalina.base=$CATALINA_BASE -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties org.apache.catalina.startup.Bootstrap

Verificamos la instalación y ejecutamos el servisor

$CATALINA_HOME/bin/daemon.sh start

Eclipse


 

Ejecución de Proyecto Prueba MonitorUI desde Eclipse.

Creación de clase UiApplication

package mx.com.yjm.monitor.ui;
import java.util.HashMap;
import java.util.Map;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@RestController
public class UiApplication {
@RequestMapping("/resource")
 public Map<String,Object> home() 
 {
 Map<String,Object> model = new HashMap<String,Object>();
 model.put("idMx", "Monitor MX");
 model.put("contentMx", "http://my.url.01/");
 model.put("imageUrlMx", "img/mexico.jpg");
 
 model.put("idCl", "Monitor CL");
 model.put("contentCl", "http://my.url.02/");
 model.put("imageUrlCl", "img/chile.jpg");
 
 model.put("idCo", "Monitor CO");
 model.put("contentCo", "http://my.url.03/");
 model.put("imageUrlCo", "img/colombia.jpg");
 
 model.put("idPe", "Monitor PE");
 model.put("contentPe", "http://my.url.04/");
 model.put("imageUrlPe", "img/peru.jpg");
 
 return model;
 }
public static void main(String[] args) {
 SpringApplication.run(UiApplication.class, args);
 }
}

 

Index.html

codigo1codigo2

 

Ejecución proyecto desde Run As -> Run Configurations

run.png

Configuración de argumentos

–spring.config.location=classpath:/application.proporties

 

params

Configuración variables del application.properties: security.user.password y server.port

enviroment.png

Consola

run.png

Navegador

localhost

 

Spring CLI


Spring Boot CLI es una herramienta de línea de comandos que puede ser usada para rápidamente crear un prototipo de Spring.

INSTALACIÓN SPRING CLI

Descargamos el tar o zip

Descomprimos el paquete y de acuerdo a las instrucciones en INSTALL.txt procedemos a configurar.

Ejemplo:

  • Configuramos las variables de ambiente:
SPRING_HOME= \spring-1.2.5.RELEASE
PATH=%PATH%;%SPRING_HOME%\bin
  • Ejecutamos el script correspondiente que se encuentra en \spring-1.2.5.RELEASE\bin
./spring
spring.bat
  • Verificamos la instalación:
 spring --version

Creamos un folder con el nombre del proyecto y un archivo llamado app.groovy.

app.groovy.

@RestController
class ThisWillActuallyRun {

    @RequestMapping("/")
    String home() {
        "Hello World!"
    }
}

Ejecutamos el comando:

spring run app.groovy

test

Verificamos que se despliegue correctamente la app en  http://localhost:8080/

Hello