En nuestro blog publicamos novedades y artículos relacionados a nuestra comunidad y tecnología en general.
El blog de Sysarmy está hecho con Go Hugo.
¡Las contribuciones siempre son bienvenidas! La idea es que, cuanto más contenido afín tengamos en el blog, mayor será el beneficio para la comunidad. El único requisito es que el contenido esté en español.
La forma más directa y fácil de contribuir es escribiendo tu post en un Documento de Google y compartiéndolo con la comunidad para que alguien lo pueda revisar y publicar por vos.
Si querés darle el formato vos, en este artículo podés ver una guía paso a paso para realizar tu primera contribución a un repositorio en GitHub, y acá te dejamos una lista cortita y al pie para mandar tu contribución:
- Forkear el repo. 911 que es git?
- Clonar el fork a tu PC con
git clone
. - Crear una nueva rama, por ejemplo new-post usando
git checkout -b new-post
. - En el directorio
content/posts/
vas a encontrar el archivo template-post.md, que es una plantilla. Copiarlo, y ponerle el nombre del post. - Editar los valores por defecto (description, tags, etc) y escribir el post per se. El post se formatea por defecto usando Markdown, así que te dejamos una guía rápida para poder darle formato a tu post. Todas las imágenes que uses en tu post las tenés que dejar en el directorio
static/assets/
, y las podés insertar en el cuerpo del post usando Markdown, por ejemplo![](assets/mi-imagen.png)
. - ❗ Hacer el commit y push a tu fork/new-post. Este paso es importante, siempre hacer el push a tu fork.
- ❗ Hacer pull request a
blog/master
. - Algún admin del blog va a revisar el pull request, quizás iterar con comentarios.
- Finalmente el pull request se acepta.
- Probablemente se hagan ajustes finales.
- Se mergea a master y se publica en ✨Internet✨.
En este link podés encontrar la documentación oficial para instalar Go Hugo (en inglés). De todas maneras te dejamos algunas alternativas de instalación:
Si estás en una PC con Windows y usas Chocolatey como gestor de paquetes, podés instalar Hugo con el siguiente comando:
choco install hugo -confirm
Y después iniciarlo es tan simple como ejecutar:
hugo server -D
Utilizando brew se debe correr el siguiente comando:
brew install hugo
Verificar la versión instalada
hugo version
En el archivo config.toml se encuentra atributo publishDir, este se utiliza para determinar el directorio destino cuando se buildea. Una vez clonado el repositorio y desde el directorio blog, iniciar Go Hugo en modo Develop (no genera los archivos estáticos):
hugo server -D
- Para las distribuciones que soporten Snap, se puede instalar con:
- Armaste el OS con tus propias manos, así que no debería ser necesario aclararlo, pero:
snap install hugo
sudo apt-get install hugo
sudo pacman -Syu hugo
sudo dnf install hugo
Una vez instalado Hugo, independientemente de tu distribución, y desde el directorio clonado del repositorio, podés iniciar Hugo con el siguiente comando:
hugo server -D
El equipo de Hugo no ofrece imágenes oficiales de Docker, pero recomienda la siguiente: https://hub.docker.com/r/klakegg/hugo/
Para utilizarla, desde el directorio del repositorio clonado, solo hay que ejecutar:
docker run --rm -it \
-v $(pwd):/src \
-p 1313:1313 \
klakegg/hugo \
server
O también se puede usar con docker-compose:
server:
image: klakegg/hugo
command: server
volumes:
- ".:/src"
ports:
- "1313:1313"
Además de hacer una copia del template, también se puede utilizar el siguiente comando para generar un post nuevo. El archivo se encontrará dentro del directorio content/posts/
:
hugo new posts/nombre-del-post.md
La metadata que se está cargando en todos los posts es:
- Title: el título del post.
- Description: descripción del contenido del post.
- Keywords: palabras clave relacionadas con el contenido del post.
- Tags: similar a keywords, etiquetas que permitan filtrar el post.
- Thumbnail/socialImage/featuredImage (los 3 tienen el mismo valor): imagen principal del artículo.
- Topics: similar a tags, temas que aborda el post.
- markup: markdown o html según corresponda.
- date: fecha de publicación.
Ejemplo:
---
Description: "10 proyectos de portfolio para aspirantes a automation engineer"
Keywords:
- devops
- engineer
- ...
Section:
Tags:
- sysarmy
- devops
- ...
Thumbnail: assets/202103-iniciarse-en-devops.png
socialImage: assets/202103-iniciarse-en-devops.png
featuredImage: assets/202103-iniciarse-en-devops.png
Title: "Como entrar a DevOps, un hilo robado"
Topics:
- devops
- engineer
- ...
markup: markdown
date: 2021-03-02
draft: false
---
Una vez finalizado el post, localmente se puede validar buildeando.
hugo
❗ Atención: En este repo solo se debe subir el post porque se buildea automágicamente y luego se podrá ver en https://sysarmy.com/blog
¿Dudas, consultas o inquietudes? Podés sumarte a Discord o Slack , en ambos hay un canal #disneyland
(que esta bridgeado entre ambas plataformas). Si dejas un mensaje 🛎️ ahí alguien te va a responder (aunque pueda tardar un poco).