{"id":1056,"date":"2026-02-12T09:51:01","date_gmt":"2026-02-12T08:51:01","guid":{"rendered":"https:\/\/vermiip.es\/blog\/?p=1056"},"modified":"2026-02-12T09:51:03","modified_gmt":"2026-02-12T08:51:03","slug":"automatizar-tests-y-despliegues-con-github-actions","status":"publish","type":"post","link":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/","title":{"rendered":"Automatizar tests y despliegues con GitHub Actions"},"content":{"rendered":"<p>GitHub Actions se ha convertido en una herramienta esencial para desarrolladores que buscan optimizar sus flujos de trabajo, automatizando tareas que antes requer\u00edan mucho tiempo y esfuerzo. En este art\u00edculo, exploraremos c\u00f3mo puedes utilizar GitHub Actions para automatizar tanto tests como despliegues, mejorando as\u00ed la eficiencia y calidad de tus proyectos de software.<\/p>\n<h3>\u00bfQu\u00e9 es GitHub Actions?<\/h3>\n<p>GitHub Actions es una caracter\u00edstica de GitHub que permite a los desarrolladores automatizar tareas en su flujo de trabajo de desarrollo de software. Con GitHub Actions, puedes ejecutar scripts personalizados, compilar tu c\u00f3digo, realizar pruebas y desplegar aplicaciones de forma autom\u00e1tica. Esto te permite integrar <strong>DevOps<\/strong> en tus proyectos de una manera simple y efectiva.<\/p>\n<p>Para conocer m\u00e1s sobre esta funcionalidad, puedes consultar el art\u00edculo <a href=\"https:\/\/vermiip.es\/blog\/que-es-github-actions-y-para-que-sirve\">\u00bfQu\u00e9 es GitHub Actions y para qu\u00e9 sirve?<\/a><\/p>\n<h3>Configurar tu primer flujo de trabajo<\/h3>\n<p>Configurar un flujo de trabajo en GitHub Actions es bastante sencillo. Todos los workflows se definen en archivos de configuraci\u00f3n YAML que se encuentran en el directorio <strong>.github\/workflows<\/strong> de tu repositorio. Veamos los pasos b\u00e1sicos para crear un flujo de trabajo que ejecute pruebas autom\u00e1ticamente cuando se realice un <strong>push<\/strong> a la rama principal.<\/p>\n<pre><code>name: CI\n\non:\n  push:\n    branches:\n      - main\n\njobs:\n  build:\n    runs-on: ubuntu-latest\n\n    steps:\n    - name: Checkout code\n      uses: actions\/checkout@v2\n\n    - name: Set up Node.js\n      uses: actions\/setup-node@v2\n      with:\n        node-version: '14'\n\n    - name: Install dependencies\n      run: npm install\n\n    - name: Run tests\n      run: npm test\n<\/code><\/pre>\n<p>En este ejemplo, hemos definido un flujo de trabajo llamado <strong>CI<\/strong> (Integraci\u00f3n Continua) que se ejecuta cada vez que se realiza un <strong>push<\/strong> a la rama <strong>main<\/strong>. El flujo realiza las siguientes acciones:<\/p>\n<ul>\n<li>Se basa en un entorno Ubuntu reciente.<\/li>\n<li>Obtiene el c\u00f3digo del repositorio.<\/li>\n<li>Instala Node.js.<\/li>\n<li>Instala dependencias utilizando <strong>npm<\/strong>.<\/li>\n<li>Ejecuta las pruebas definidas en tu proyecto.<\/li>\n<\/ul>\n<h3>Automatizando despliegues<\/h3>\n<p>Adem\u00e1s de las pruebas, GitHub Actions tambi\u00e9n permite automatizar el proceso de despliegue a diversas plataformas. Si deseas desplegar tu aplicaci\u00f3n en <strong>Heroku<\/strong>, por ejemplo, puedes incluir un paso adicional en tu flujo de trabajo para hacerlo.<\/p>\n<pre><code>- name: Deploy to Heroku\n  env:\n    HEROKU_API_KEY: ${{ secrets.HEROKU_API_KEY }}\n  run: |\n    git remote add heroku https:\/\/git.heroku.com\/your-app-name.git\n    git push heroku main\n<\/code><\/pre>\n<p>El bloque anterior a\u00f1ade un paso al flujo de trabajo que se encarga de desplegar tu aplicaci\u00f3n en Heroku. Para este m\u00e9todo, necesitar\u00e1s almacenar tu token de API de Heroku como un <strong>secreto<\/strong> en los ajustes de tu repositorio de GitHub, lo que garantiza que tu informaci\u00f3n sensible se mantenga segura. Puedes consultar m\u00e1s sobre c\u00f3mo hacer esto en la gu\u00eda de <a href=\"https:\/\/vermiip.es\/blog\/primeros-pasos-con-github-actions-ejemplo-practico\">primeros pasos con GitHub Actions<\/a>.<\/p>\n<h3>Practicas recomendadas en GitHub Actions<\/h3>\n<p>Al implementar GitHub Actions en tus proyectos, sigue estas <strong>pr\u00e1cticas recomendadas<\/strong>:<\/p>\n<ul>\n<li><strong>Mantener los workflows simples:<\/strong> Divide los flujos de trabajo complejos en m\u00faltiples archivos YAML para facilitar su mantenimiento.<\/li>\n<li><strong>Monitoriza tus acciones:<\/strong> Utiliza las opciones de registros y notificaciones para supervisar el estado de tus workflows y detectar errores r\u00e1pidamente.<\/li>\n<li><strong>Usar cach\u00e9:<\/strong> Implementa el cach\u00e9 de dependencias para acelerar las instalaciones en flujos de trabajo subsiguientes.<\/li>\n<\/ul>\n<h3>Errores comunes a evitar<\/h3>\n<p>A pesar de su simplicidad, hay algunos errores comunes que puedes encontrar al trabajar con GitHub Actions:<\/p>\n<ul>\n<li>No validar correctamente la sintaxis del YAML, lo que puede causar fallos en el flujo de trabajo.<\/li>\n<li>Exponer secretos o credenciales en los logs del flujo de trabajo.<\/li>\n<li>No organizar tus flujos de trabajo correctamente, lo que dificulta el mantenimiento a largo plazo.<\/li>\n<\/ul>\n<h3>Conclusi\u00f3n<\/h3>\n<p>Automatizar tests y despliegues con GitHub Actions puede ahorrarte tiempo y esfuerzo, permiti\u00e9ndote concentrarte en la creaci\u00f3n de mejores aplicaciones. Desde la configuraci\u00f3n inicial de flujos de trabajo hasta la implementaci\u00f3n de mejores pr\u00e1cticas, GitHub Actions ofrece una amplia gama de posibilidades para optimizar tus proyectos de software.<\/p>\n<h3>Fuentes y lecturas recomendadas<\/h3>\n<ul>\n<li><a href=\"https:\/\/vermiip.es\/blog\/que-es-github-actions-y-para-que-sirve\">\u00bfQu\u00e9 es GitHub Actions y para qu\u00e9 sirve?<\/a><\/li>\n<li><a href=\"https:\/\/vermiip.es\/blog\/primeros-pasos-con-github-actions-ejemplo-practico\">Primeros pasos con GitHub Actions: ejemplo pr\u00e1ctico<\/a><\/li>\n<li><a href=\"https:\/\/docs.github.com\/en\/actions\">Documentaci\u00f3n oficial de GitHub Actions<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Aprende a automatizar tus pruebas y despliegues de aplicaciones utilizando GitHub Actions. Descubre c\u00f3mo configurar flujos de trabajo eficientes y mejorar tu ciclo de desarrollo.<\/p>\n","protected":false},"author":1,"featured_media":1057,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[180],"tags":[229,240],"class_list":["post-1056","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-git","tag-github","tag-github-actions"],"_wp_attached_file":null,"_wp_attachment_metadata":null,"_wp_old_slug":null,"_aioseop_description":null,"_wp_attachment_image_alt":null,"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Automatizar tests y despliegues con GitHub Actions - Ver mi IP<\/title>\n<meta name=\"description\" content=\"Aprende a automatizar tus pruebas y despliegues de aplicaciones utilizando GitHub Actions. Descubre c\u00f3mo configurar flujos de trabajo eficientes y mejorar tu ciclo de desarrollo.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Automatizar tests y despliegues con GitHub Actions - Ver mi IP\" \/>\n<meta property=\"og:description\" content=\"Aprende a automatizar tus pruebas y despliegues de aplicaciones utilizando GitHub Actions. Descubre c\u00f3mo configurar flujos de trabajo eficientes y mejorar tu ciclo de desarrollo.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/\" \/>\n<meta property=\"og:site_name\" content=\"Ver mi IP\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-12T08:51:01+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-12T08:51:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vermiip.es\/blog\/wp-content\/uploads\/2026\/02\/output1-6.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1792\" \/>\n\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Xose de la Paz\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Xose de la Paz\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/\"},\"author\":{\"name\":\"Xose de la Paz\",\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/#\\\/schema\\\/person\\\/0617918e61a75dc2d11c09238bf84200\"},\"headline\":\"Automatizar tests y despliegues con GitHub Actions\",\"datePublished\":\"2026-02-12T08:51:01+00:00\",\"dateModified\":\"2026-02-12T08:51:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/\"},\"wordCount\":606,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/output1-6.png\",\"keywords\":[\"Github\",\"github actions\"],\"articleSection\":[\"GIT\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/\",\"url\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/\",\"name\":\"Automatizar tests y despliegues con GitHub Actions - Ver mi IP\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/output1-6.png\",\"datePublished\":\"2026-02-12T08:51:01+00:00\",\"dateModified\":\"2026-02-12T08:51:03+00:00\",\"description\":\"Aprende a automatizar tus pruebas y despliegues de aplicaciones utilizando GitHub Actions. Descubre c\u00f3mo configurar flujos de trabajo eficientes y mejorar tu ciclo de desarrollo.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/output1-6.png\",\"contentUrl\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/output1-6.png\",\"width\":1792,\"height\":1024,\"caption\":\"Automatizar tests y despliegues con GitHub Actions\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/automatizar-tests-y-despliegues-con-github-actions\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Automatizar tests y despliegues con GitHub Actions\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/\",\"name\":\"Cual es mi ip - Internet y otras locuras\",\"description\":\"Internet y otras locuras\",\"publisher\":{\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/#organization\"},\"alternateName\":\"Cual es mi IP\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/#organization\",\"name\":\"Ver mi IP\",\"alternateName\":\"vermiip\",\"url\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/cropped-logo-vermiip-naranja.png\",\"contentUrl\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/cropped-logo-vermiip-naranja.png\",\"width\":512,\"height\":512,\"caption\":\"Ver mi IP\"},\"image\":{\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/vermiip.es\\\/blog\\\/#\\\/schema\\\/person\\\/0617918e61a75dc2d11c09238bf84200\",\"name\":\"Xose de la Paz\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d248b555dd18abd5e7350d28ecf07116718da621eb85762e02558c2cef2bb8bc?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d248b555dd18abd5e7350d28ecf07116718da621eb85762e02558c2cef2bb8bc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d248b555dd18abd5e7350d28ecf07116718da621eb85762e02558c2cef2bb8bc?s=96&d=mm&r=g\",\"caption\":\"Xose de la Paz\"},\"description\":\"M\u00e1s de 20 a\u00f1os transformando pasi\u00f3n en profesi\u00f3n. Experto en desarrollo Full Stack con una visi\u00f3n integral que abarca desde la gesti\u00f3n de servidores y redes hasta el dise\u00f1o de interfaz. Soy un \\\"todoterreno\\\" tecnol\u00f3gico que cree en el aprendizaje continuo y la visi\u00f3n global de los proyectos. Entre despliegue y despliegue, me pierdo por el mundo con mi c\u00e1mara al hombro.\",\"sameAs\":[\"https:\\\/\\\/www.enfocado.com\",\"https:\\\/\\\/www.instagram.com\\\/xose_de_la_paz\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/xosedelapaz\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Automatizar tests y despliegues con GitHub Actions - Ver mi IP","description":"Aprende a automatizar tus pruebas y despliegues de aplicaciones utilizando GitHub Actions. Descubre c\u00f3mo configurar flujos de trabajo eficientes y mejorar tu ciclo de desarrollo.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/","og_locale":"es_ES","og_type":"article","og_title":"Automatizar tests y despliegues con GitHub Actions - Ver mi IP","og_description":"Aprende a automatizar tus pruebas y despliegues de aplicaciones utilizando GitHub Actions. Descubre c\u00f3mo configurar flujos de trabajo eficientes y mejorar tu ciclo de desarrollo.","og_url":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/","og_site_name":"Ver mi IP","article_published_time":"2026-02-12T08:51:01+00:00","article_modified_time":"2026-02-12T08:51:03+00:00","og_image":[{"width":1792,"height":1024,"url":"https:\/\/vermiip.es\/blog\/wp-content\/uploads\/2026\/02\/output1-6.png","type":"image\/png"}],"author":"Xose de la Paz","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Xose de la Paz","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/#article","isPartOf":{"@id":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/"},"author":{"name":"Xose de la Paz","@id":"https:\/\/vermiip.es\/blog\/#\/schema\/person\/0617918e61a75dc2d11c09238bf84200"},"headline":"Automatizar tests y despliegues con GitHub Actions","datePublished":"2026-02-12T08:51:01+00:00","dateModified":"2026-02-12T08:51:03+00:00","mainEntityOfPage":{"@id":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/"},"wordCount":606,"commentCount":0,"publisher":{"@id":"https:\/\/vermiip.es\/blog\/#organization"},"image":{"@id":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/#primaryimage"},"thumbnailUrl":"https:\/\/vermiip.es\/blog\/wp-content\/uploads\/2026\/02\/output1-6.png","keywords":["Github","github actions"],"articleSection":["GIT"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/","url":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/","name":"Automatizar tests y despliegues con GitHub Actions - Ver mi IP","isPartOf":{"@id":"https:\/\/vermiip.es\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/#primaryimage"},"image":{"@id":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/#primaryimage"},"thumbnailUrl":"https:\/\/vermiip.es\/blog\/wp-content\/uploads\/2026\/02\/output1-6.png","datePublished":"2026-02-12T08:51:01+00:00","dateModified":"2026-02-12T08:51:03+00:00","description":"Aprende a automatizar tus pruebas y despliegues de aplicaciones utilizando GitHub Actions. Descubre c\u00f3mo configurar flujos de trabajo eficientes y mejorar tu ciclo de desarrollo.","breadcrumb":{"@id":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/#primaryimage","url":"https:\/\/vermiip.es\/blog\/wp-content\/uploads\/2026\/02\/output1-6.png","contentUrl":"https:\/\/vermiip.es\/blog\/wp-content\/uploads\/2026\/02\/output1-6.png","width":1792,"height":1024,"caption":"Automatizar tests y despliegues con GitHub Actions"},{"@type":"BreadcrumbList","@id":"https:\/\/vermiip.es\/blog\/automatizar-tests-y-despliegues-con-github-actions\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/vermiip.es\/blog\/"},{"@type":"ListItem","position":2,"name":"Automatizar tests y despliegues con GitHub Actions"}]},{"@type":"WebSite","@id":"https:\/\/vermiip.es\/blog\/#website","url":"https:\/\/vermiip.es\/blog\/","name":"Cual es mi ip - Internet y otras locuras","description":"Internet y otras locuras","publisher":{"@id":"https:\/\/vermiip.es\/blog\/#organization"},"alternateName":"Cual es mi IP","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vermiip.es\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/vermiip.es\/blog\/#organization","name":"Ver mi IP","alternateName":"vermiip","url":"https:\/\/vermiip.es\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/vermiip.es\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/vermiip.es\/blog\/wp-content\/uploads\/2023\/10\/cropped-logo-vermiip-naranja.png","contentUrl":"https:\/\/vermiip.es\/blog\/wp-content\/uploads\/2023\/10\/cropped-logo-vermiip-naranja.png","width":512,"height":512,"caption":"Ver mi IP"},"image":{"@id":"https:\/\/vermiip.es\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/vermiip.es\/blog\/#\/schema\/person\/0617918e61a75dc2d11c09238bf84200","name":"Xose de la Paz","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/d248b555dd18abd5e7350d28ecf07116718da621eb85762e02558c2cef2bb8bc?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d248b555dd18abd5e7350d28ecf07116718da621eb85762e02558c2cef2bb8bc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d248b555dd18abd5e7350d28ecf07116718da621eb85762e02558c2cef2bb8bc?s=96&d=mm&r=g","caption":"Xose de la Paz"},"description":"M\u00e1s de 20 a\u00f1os transformando pasi\u00f3n en profesi\u00f3n. Experto en desarrollo Full Stack con una visi\u00f3n integral que abarca desde la gesti\u00f3n de servidores y redes hasta el dise\u00f1o de interfaz. Soy un \"todoterreno\" tecnol\u00f3gico que cree en el aprendizaje continuo y la visi\u00f3n global de los proyectos. Entre despliegue y despliegue, me pierdo por el mundo con mi c\u00e1mara al hombro.","sameAs":["https:\/\/www.enfocado.com","https:\/\/www.instagram.com\/xose_de_la_paz\/","https:\/\/www.linkedin.com\/in\/xosedelapaz\/"]}]}},"_links":{"self":[{"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/posts\/1056","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/comments?post=1056"}],"version-history":[{"count":1,"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/posts\/1056\/revisions"}],"predecessor-version":[{"id":1058,"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/posts\/1056\/revisions\/1058"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/media\/1057"}],"wp:attachment":[{"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/media?parent=1056"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/categories?post=1056"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vermiip.es\/blog\/wp-json\/wp\/v2\/tags?post=1056"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}