-
Notifications
You must be signed in to change notification settings - Fork 4
Como colaborar con la web de python vigo
Cada clave pública en github sólo se puede utilizar para un repositorio concreto
Gran parte de esta configuración no sería necesaria si github permitiese usar la misma clave pública para varios repositorios, pero no es el caso.
Al tener esa restricción, para que el sistema local (tu PC) sepa qué clave necesita usar para cada repositorio de github, hay que configurarlo de esta forma específicándole qué clave corresponde a qué repositorio.
Se asume que antes de empezar tenemos:
- Python 3.5+ (no probado con versiones anteriores)
- Git
- Entorno virtual creado con Python 3.5+ (no probado con versiones anteriores)
-
Crear par de claves
- Abre una terminal
- Escribe lo sigiuente para iniciar el proceso de creación de claves
$ ssh-keygen -t rsa -b 4096 -C "[email protected]"
- Cuando se solicite introducir un lugar en el que grabar la clave, escribe la ruta que se muestra en el ejemplo siguiente sustituyendo "MI_USUARIO" por el usuario que estés usando
Enter file in which to save the key (/home/peibolvig/.ssh/id_rsa): /home/MI_USUARIO/.ssh/id_rsa_pythonvigoweb
- Escribe un password (por seguridad no se recomienda dejarlo vacío)
Enter passphrase (empty for no passphrase): mipassword Enter same passphrase again: mipassword
-
Crear/editar fichero de configuración de ssh para el usuario
- Usar nuestro editor favorito para crear o editar el fichero: ~/.ssh/config
- Añadir al final del fichero las siguientes lineas:
Host pythonvigoweb HostName github.com IdentityFile ~/.ssh/id_rsa_pythonweb
- Guardar y salir
-
Enviar clave PÚBLICA a alguien con permisos de administración del repositorio, para que la incluya en la sección "deploy keys"
cat ~/.ssh/id_rsa_pythonvigoweb.pub
-
Activar el entorno virtual y situarse dentro de la carpeta donde queramos tener el proyecto de la web de python Vigo
-
Clonar repositorio de pythonvigo web con el siguiente comando
OJO!! NO es el mismo comando que se ve cuando entramos en github. Este hace referencia al alias que configuramos en el paso 2
git clone git@pythonvigoweb:python-vigo/python-vigo.github.io.git
-
Instalar las dependencias
La rama del repositorio sobre la que hay que trabajar es "src" NUNCA ha de tocarse "master" ya que el contenido de esa rama es autogenerado con los despliegues.
git checkout src pip install -r requirements.txt
-
Esperar a que los admin incluyan la clave en el repositorio
En cuanto los administradores incluyan la clave pública recién creada en la configuración del repositorio, se podrá construir y desplegar automáticamente cualquier cambio hecho en el código de la rama "src" con el comando:
nikola github_deploy
---------> TO DO <---------