Kubernetes Resource Management

I had the chance to listen to Bekir Doğan’s presentation, a former Kartaca employee, at an event in 2017. I was very impressed when I heard that they set up and distribute all the services they manage with OpenVZ in containers in 2005. Was anyone really into this type of thing? Apparently, yes. Since the early 2000s, most of the industry and the Linux community have been trying to make containers into what they are today. …

Posted on

Renew SSL Certs on Azure Application Gateway with Gitlab CI

Renewing SSL certificates on Azure Application Gateway is a regular toil for me. Whenever I research how to automate it, it felt like everyone uses some Azure tools that doesn’t fit to my liking. I don’t want to copy a year old Powershell script and paste it to an Azure automation account (Oh, I can’t even use an Azure Automation account because I don’t have the permission to register applications in my client’s Active Directory). …

Posted on

Building a Linux Kernel Module

Last night a friend of mine asked for help for her homework on operating systems. It’s about building a simple Linux kernel module and linked list operations. I hadn’t worked on a kernel module before but somehow knew the basics are simple to grasp. This is the transcript of my experience. The basics Kernel modules have two entrypoints: init and exit. The init function runs when you run insmod <module> and exit function runs when you run rmmod <module>. …

Posted on

PortQuiz.net

Recently, I was trying to connect to an Azure SQL database from a client’s Windows Server. The Windows admin was telling me he can connect to any website from server but not my SQL database. It was evident that only 80 and 443 outbound ports are allowed but I had to prove this to convince him to open a ticket to network team. I was looking for a public server that listens on a non regular port. …

Posted on

Merging gitlabci and gitlabenv

Recently I announced two new projects: gitlabenv and gitlabci. They both made for easing the problems I faced while using Gitlab CI. Now I’m merging two projects into one. Therefore gitlabci is the successor of gitlabenv. After merge; $ gitlabenv list group/project turns to $ gitlabci env list group/project and $ gitlabci list group/project turns to $ gitlabci pipeline list group/project Download gitlabci here.

Posted on

New project: gitlabci

At Artistanbul, we usually have multiple repositories for a client and a release often requires running a pipeline on some or all of them. Besides the pain of managing environment variables, the second annoying thing about Gitlab CI is lack of a dashboard to see all pipelines of a group. There is a 4 years old issue about it (still active though). I created gitlabci for this reason. You can see the usage, download the binary for your OS, submit bugs and feature request on Github. …

Posted on

Packaging a Python program for Fedora

Being a Fedora contributor is one of my long term goals. Recently I took the first step by submitting the Redmine CLI to Fedora. Creating spec file is a bit hard, even for a trivial command line application. So I’ll document the steps others to benefit. Spec file %global pypi_name redminecli %{?python_enable_dependency_generator} Name: %{pypi_name} Version: 1.1.8 Release: 1%{?dist} Summary: Command line interface for Redmine License: GPLv3 URL: https://github.com/egegunes/redmine-cli Source0: %{pypi_source} BuildArch: noarch BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pytest BuildRequires: python3-click BuildRequires: python3-requests %description `redminecli` is a command line interface for Redmine. …

Posted on

New project: Gitlabenv

At Artistanbul, we started using Gitlab CI. While building our pipeline, the hardest part was managing environment variables. Gitlab’s interface makes it really hard: Gitlabenv is a little command line application that makes managing this variables easier. It gets the current state from Gitlab, you modify the variables and it uploads your modified version to Gitlab. It doesn’t support removing variables yet. I’ll add features as I need. If you see any issues or have feedback let me know. …

Posted on

New project: egegunes.rocks

I like direct feedback whether is positive or negative. I created egegunes.rocks for that. It’s a litte web application to allow people provide anonymous feedback about me. It was also a opportunity to continue my serverless journey. It’s running on AWS Lambda and stores its data in AWS DynamoDB. You can see the source on Github.

Posted on

New project: Redmine CLI

I’m happy to announce my latest project Redmine CLI is available. It’s a command line interface for the project management and bug tracking software called Redmine that we use in Artistanbul. You can install it via pip: $ pip3 install --user redminecli Also, I’m planning to make a RPM package for Fedora, so you will be able to install it with dnf in the near future. To see examples of how to use redmine see the README. …

Posted on