-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
14 lines (14 loc) · 16 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!doctype html><html lang=en dir=auto><head><meta name=generator content="Hugo 0.124.1"><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>SlashDevOps</title>
<meta name=keywords content="DevOps,Cloud,Containers,Kubernetes,CI/CD,Automation,Infrastructure as Code"><meta name=description content="SlashDevOps is a blog about DevOps, Cloud, Containers, Kubernetes, CI/CD, Automation, Infrastructure as Code, and more."><meta name=author content="Christian González Di Antonio"><link rel=canonical href=https://slashdevops.com/><link crossorigin=anonymous href=/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z+V9+cO1A=" rel="preload stylesheet" as=style><link rel=icon href=https://slashdevops.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://slashdevops.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://slashdevops.com/favicon-32x32.png><link rel=apple-touch-icon href=https://slashdevops.com/apple-touch-icon.png><link rel=mask-icon href=https://slashdevops.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://slashdevops.com/index.xml><link rel=alternate type=application/json href=https://slashdevops.com/index.json><link rel=alternate hreflang=en href=https://slashdevops.com/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51)}.list{background:var(--theme)}.list:not(.dark)::-webkit-scrollbar-track{background:0 0}.list:not(.dark)::-webkit-scrollbar-thumb{border-color:var(--theme)}}</style></noscript><script async src="https://www.googletagmanager.com/gtag/js?id=G-ZTLZKCCSQ6"></script><script>var doNotTrack=!1;if(!doNotTrack){window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("js",new Date),gtag("config","G-ZTLZKCCSQ6",{anonymize_ip:!1})}</script><meta property="og:title" content="SlashDevOps"><meta property="og:description" content="SlashDevOps is a blog about DevOps, Cloud, Containers, Kubernetes, CI/CD, Automation, Infrastructure as Code, and more."><meta property="og:type" content="website"><meta property="og:url" content="https://slashdevops.com/"><meta property="og:site_name" content="SlashDevOps"><meta name=twitter:card content="summary"><meta name=twitter:title content="SlashDevOps"><meta name=twitter:description content="SlashDevOps is a blog about DevOps, Cloud, Containers, Kubernetes, CI/CD, Automation, Infrastructure as Code, and more."><script type=application/ld+json>{"@context":"https://schema.org","@type":"Organization","name":"SlashDevOps","url":"https://slashdevops.com/","description":"SlashDevOps is a blog about DevOps, Cloud, Containers, Kubernetes, CI/CD, Automation, Infrastructure as Code, and more.","thumbnailUrl":"https://slashdevops.com/favicon.ico","sameAs":["https://x.com/slashdevops","https://github.com/slashdevops"]}</script></head><body class=list id=top><script>localStorage.getItem("pref-theme")==="dark"?document.body.classList.add("dark"):localStorage.getItem("pref-theme")==="light"?document.body.classList.remove("dark"):window.matchMedia("(prefers-color-scheme: dark)").matches&&document.body.classList.add("dark")</script><header class=header><nav class=nav><div class=logo><a href=https://slashdevops.com/ accesskey=h title="slashdevops.com (Alt + H)"><img src=https://slashdevops.com/safari-pinned-tab.svg alt aria-label=logo height=45>slashdevops.com</a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)"><svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg><svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://slashdevops.com/categories/ title=Categories><span>Categories</span></a></li><li><a href=https://github.com/slashdevops title=GitHub><span>GitHub</span> <svg fill="none" shape-rendering="geometricPrecision" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" viewBox="0 0 24 24" height="12" width="12"><path d="M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6"/><path d="M15 3h6v6"/><path d="M10 14 21 3"/></svg></a></li><li><a href=https://slashdevops.com/archives title=Archives><span>Archives</span></a></li><li><a href=https://slashdevops.com/post/ title=Blog><span>Blog</span></a></li><li><a href=https://slashdevops.com/search title="Search (Alt + /)" accesskey=/><span>Search</span></a></li><li><a href=https://slashdevops.com/tags/ title=Tags><span>Tags</span></a></li></ul></nav></header><main class=main><article class="first-entry home-info"><header class=entry-header><h1>SlashDevops’s Blog</h1></header><div class=entry-content>👉 Welcome to the SlashDevOps blog. Here you will find articles about DevOps, Cloud, Containers, Kubernetes, CI/CD, Automation, Infrastructure as Code, and more.</div><footer class=entry-footer><div class=social-icons><a href=https://x.com/slashdevops target=_blank rel="noopener noreferrer me" title=X><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentcolor"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/></svg>
</a><a href=https://github.com/slashdevops target=_blank rel="noopener noreferrer me" title=Github><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg></a></div></footer></article><article class=post-entry><figure class=entry-cover><img loading=lazy src=https://slashdevops.com/post/2024/04/07/1/images/vscode-flagvar.png alt="Using Files as a Flag in the Golang Command Line Interface (CLI)"></figure><header class=entry-header><h2 class=entry-hint-parent>Using Files as a Flag in the Golang Command Line Interface (CLI)</h2></header><div class=entry-content><p>Introduction In this post, we will see how to use files as a flag in the Golang Command Line Interface (CLI). This is useful when you want to pass a file (not the file name, but an object of file type) as a flag to your CLI application.
Use the file name as a flag is straightforward, you can use the flag.String or flag.StringVar function to get the file name and then do the necessary checks to validate if this exist, create it, clean it, etc....</p></div><footer class=entry-footer><span title='2024-04-07 10:17:23 +0200 +0200'>April 7, 2024</span> · 6 min · 1147 words · Christian González Di Antonio</footer><a class=entry-link aria-label="post link to Using Files as a Flag in the Golang Command Line Interface (CLI)" href=https://slashdevops.com/post/2024/04/07/1/using-files-as-a-flag-in-the-golang-command-line-interface-cli/></a></article><article class=post-entry><figure class=entry-cover><img loading=lazy src=https://slashdevops.com/post/2024/03/31/2/images/cover-image.png alt="Building and Debugging a C Project in Visual Studio Code with a Makefile"></figure><header class=entry-header><h2 class=entry-hint-parent>Building and Debugging a C Project in Visual Studio Code with a Makefile</h2></header><div class=entry-content><p>Introduction I have been using Visual Studio Code (vscode) for my C language projects until I’m re-learning this powerful programming language. One of the features that I like about vscode is the ability to build and debug C language projects using a Makefile. In this post, I will show you how to build and debug a C project in vscode using a Makefile.
also, I built a GitHub repository template for this project called c-library-template, where you can use it to create a new C project with the following features:...</p></div><footer class=entry-footer><span title='2024-03-31 20:02:45 +0100 +0100'>March 31, 2024</span> · 15 min · 3118 words · Christian González Di Antonio</footer><a class=entry-link aria-label="post link to Building and Debugging a C Project in Visual Studio Code with a Makefile" href=https://slashdevops.com/post/2024/03/31/2/building-and-debugging-a-c-project-in-visual-studio-code-with-a-makefile/></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Migrated from WordPress to Hugo and GitHub Pages</h2></header><div class=entry-content><p>Introduction I have been using WordPress for a long time to host slashdevops.com blog site. I had been looking for a way to migrate this blog from WordPress to a static site generator and during the research I found Hugo and I can say I am very happy with it. Hugo allows me to write this blog posts in Markdown and it is very fast and easy to use.
I have also been using GitHub Pages for other of my personal jobs and I decided to migrate this blog GitHub Pages as well....</p></div><footer class=entry-footer><span title='2024-03-31 13:25:51 +0100 +0100'>March 31, 2024</span> · 15 min · 3114 words · Christian González Di Antonio</footer><a class=entry-link aria-label="post link to Migrated from WordPress to Hugo and GitHub Pages" href=https://slashdevops.com/post/2024/03/31/1/migrated-from-wordpress-to-hugo-and-github-pages/></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Secure and Easy AWS Connection Assuming a Role With Jenkins Shared Library</h2></header><div class=entry-content><p>The Problem Surely and like me, you are trying to be more secure when connecting Jenkins with your AWS Accounts assuming a role. If you are asking What is that? , please read this: https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html
Of course, there are many different options to use, but the problem always surrounds us, if you use a plugin then the maintainability and security when talking about Jenkins plugins for sure decrease.
I particularly hate Jenkins, from my point of view this is an obsolete tool trying to survive in the modern world, and if you are concerned about security (and maintainability) sure understand my point....</p></div><footer class=entry-footer><span title='2022-12-03 20:39:29 +0100 +0100'>December 3, 2022</span> · 5 min · 1048 words · Christian González Di Antonio</footer><a class=entry-link aria-label="post link to Secure and Easy AWS Connection Assuming a Role With Jenkins Shared Library" href=https://slashdevops.com/post/2022/12/03/1/secure-and-easy-aws-connection-assuming-a-role-with-jenkins-shared-library/></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>My custom MacBook Pro [m1|m2] Provisioning</h2></header><div class=entry-content><p>Operating System Install Rosetta 1 /usr/sbin/softwareupdate --install-rosetta --agree-to-license Install Xcode 1 xcode-select --install Package Manager Install Homebrew 1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" Add Homebrew to your PATH -> /Users/<user home>/.zprofile 1 2 echo 'eval $(/opt/homebrew/bin/brew shellenv)' >> /Users/$USER/.zprofile eval $(/opt/homebrew/bin/brew shellenv) (OPTIONAL) Update/upgrade Homebrew 1 brew update && brew upgrade Terminal and Mods Install iterm2 1 brew install --cask iterm2 WARNING: After this step close the default term and open iterm2...</p></div><footer class=entry-footer><span title='2022-09-17 21:12:43 +0100 +0100'>September 17, 2022</span> · 4 min · 691 words · Christian González Di Antonio</footer><a class=entry-link aria-label="post link to My custom MacBook Pro [m1|m2] Provisioning" href=https://slashdevops.com/post/2022/09/17/1/my-custom-macbook-ro-m1-m2-provisioning/></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Managing the Lifecycle of your Elasticsearch Indices</h2></header><div class=entry-content><p>Managing the Lifecycle of your Elasticsearch Indices Just like me, you are probably storing your [Applications | Infrastructure | IoT ] Logs / Traces (as a time series) into Elasticsearch or at least considering doing it.
If that is the case, you might be wondering how to efficiently manage index lifecycles in an automated and clean manner, then this post is for you!
What’s happening? Basically, this means that your log management/aggregator applications are storing the logs in Elasticsearch using the timestamp (of capture, processing, or another one) for every record of data and grouping, using a pattern for every group....</p></div><footer class=entry-footer><span title='2020-05-13 17:59:22 +0100 +0100'>May 13, 2020</span> · 8 min · 1663 words · Christian González Di Antonio</footer><a class=entry-link aria-label="post link to Managing the Lifecycle of your Elasticsearch Indices" href=https://slashdevops.com/post/2020/05/13/1/managing-the-lifecycle-of-your-elasticsearch-indices/></a></article></main><footer class=footer><span>© 2024 <a href=https://slashdevops.com/>SlashDevOps</a></span>
<span>Powered by
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentcolor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");menu&&(menu.scrollLeft=localStorage.getItem("menu-scroll-position"),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}),document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{document.body.className.includes("dark")?(document.body.classList.remove("dark"),localStorage.setItem("pref-theme","light")):(document.body.classList.add("dark"),localStorage.setItem("pref-theme","dark"))})</script></body></html>