Sobes.tech
Junior

Jakými programovacími jazyky automatizujete rutinní úkoly ve své práci?

sobes.tech AI

Odpověď od AI

Python. Flexibilita, bohaté knihovny (os, subprocess, requests, paramiko) a široká komunita z něj činí vynikající volbu pro skripty automatizace nasazení, monitorování a správy infrastruktury.

Bash. Je nezbytný pro psaní shell skriptů, automatizaci úloh příkazového řádku, práci se soubory a adresáři a integraci různých nástrojů do pipeline CI/CD.

Go. Používám ho k psaní výkonnějších a složitějších nástrojů automatizace, mikroservisů a utilit, kde je důležitá rychlost provádění a paralelismus.

Někdy používám Ruby nebo Perl pro práci se staršími systémy nebo skripty napsanými dříve.

Příklad automatizace v Pythonu:

import subprocess
import os

def deploy_app(server_ip, app_path):
  """
  Nasazuje aplikaci na vzdálený server.
  """
  try:
    # Příklad příkazů scp a ssh
    subprocess.run(["scp", app_path, f"user@{server_ip}:/opt/app/"], check=True)
    subprocess.run(["ssh", f"user@{server_ip}", "sudo systemctl restart myapp"], check=True)
    print(f"Aplikace {app_path} úspěšně nasazena na {server_ip}")
  except subprocess.CalledProcessError as e:
    print(f"Chyba při nasazení: {e}")

# Příklad volání funkce
# deploy_app("192.168.1.10", "/path/to/my_app.tar.gz")

Příklad automatizace v Bash:

#!/bin/bash

# Automatické čištění starých logů
LOG_DIR="/var/log/myapp"
FIND_CMD="find ${LOG_DIR} -type f -mtime +7 -name '*.log'"

# Odstranit logy starší než 7 dní
eval "${FIND_CMD} -delete" || { echo "Chyba při odstraňování logů"; exit 1; }

echo "Staré logy byly odstraněny."