I faced the challenge of making complex queries to the GitHub API. Initially, I started with a bash script, as it’s often the simplest solution for many of my use cases. However, after reviewing the documentation, I discovered an official action designed specifically for interacting with the GitHub API. Upon further exploration, I realized that […]
Automatically update major version tags with new releases on GitHub
This GitHub Action workflow is designed to run whenever a new release is published in your GitHub repository. To enhance flexibility, the workflow_dispatch event is included, allowing manual trigger of the workflow for rollbacks or other administrative tasks. The workflow performs the following actions: Events triggering the workflow As previously mentioned, this workflow is designed […]
Encrypting data with Terraform and GCP Cloud KMS
This article explains how to leverage the google_kms_secret_ciphertext resource for encrypting data using a symmetric key with Terraform on GCP. This resource exports a ciphertext attribute that you can use to create a file in a bucket or to define a custom metadata key in a VM. Therefore, we will cover three key areas: Configuring […]
Cuando pase el temblor: notificaciones de Jenkins a la carta
En 2024 se cumplirán 10 años de la muerte de Gustavo Cerati, reconocido por propios y extraños como una de las figuras más relevantes del rock en español. Si bien vivió gran parte de su carrera como solista, fue en 1985, mientras integraba Soda Stereo, que publicó el tema “Cuando pase el temblor“: Lejos de […]
Dynamic Parameters in Jenkins Jobs
Today, we will explore two different approaches to parameterizing Jenkins jobs. Utilizing the Active Choices plugin, we aim to address two common challenges: Let’s set up a fresh Jenkins instance to demonstrate how we can accomplish these tasks. Installing Active Choices plugin Navigate to the Jenkins Dashboard, then go to ‘Manage Jenkins‘ > ‘Manage Plugins‘. […]
An Ansible role to install OpenSSH on Windows
When working with Ansible and Windows, many find WinRM’s limitations both frustrating and tricky to navigate. Managing Windows remotely from a Linux environment presents unique challenges due to these constraints. From my vantage point, OpenSSH emerges as a more stable and speedy alternative compared to WinRM. This might account for its widespread recommendation as a […]
Ansible Runner: Ansible from Python code
Ansible Runner is a Python module that allows you to run Ansible playbooks from Python code. It offers “directly importable and usable API for interfacing with Ansible“. In Python, one way of dealing with Ansible is to just call it using modules such as subprocess or os.system. Ansible Runner offers a more ‘Pythonic way‘ of […]