artykuły

Jak oszukuję inventory w Ansible

Jak „oszukuję” inventory w Ansible

Inventory, czyli zbiór urządzeń, na których ma zostać wykonany playbook Ansible, co do zasady definiujemy jako statyczny plik, lub w sposób dynamiczny korzystając z wtyczek z grupy Inventory Plugins. Ja czasami jednak uciekam się do

Czytaj więcej »
Numery telefonów

Numery telefonów

Gdy programujemy skrypty związaną z contact center, czy innymi aplikacjami z rodziny telefonii IP, bardzo szybko spotkamy się zadaniami, w których musimy przetworzyć numery telefonów. Z produktów związanych z telefonią numer uzyskujemy zazwyczaj w formacie

Czytaj więcej »

Artykuły i porady

Docker Configs czyli jak umieszczam pliki wewnątrz kontenera

Jak umieszczam pliki wewnątrz konterena

Projektując mikrosegmentację usług i ich konteneryzację powinniśmy pamiętać, by nie zapisywać wewnątrz kontenerów informacji, które zmieniają się w zależności od instancji. Umieszczanie plików konfiguracyjnych aplikacji uruchamianej w kontenerze „na sztywno” w obrazie kontenera nie jest

Czytaj więcej »
Spojrzenie na oficjalny podręcznik DEVASC

Spojrzenie na oficjalny podręcznik DEVASC

Na początku października nakładem wydawnictwa CiscoPress została wydana książka Cisco Certified DevNet Associate DEVASC 200-901 Official Certification Guide. Na tą książkę czeka wiele osób, które mają w planach przystąpienie do egzaminu. Zainteresowane nią są też

Czytaj więcej »
Python 3.9 - stabilizacja i mało nowości

Python 3.9 – stabilizacja i mało nowości

We wtorek oficjalnie wydano Python 3.9. Nowa wersja nie jest niczym przełomowym, mam wrażenie, że autorzy skupili się na bardziej na stabilizacji i uporządkowaniu kodu języka niż na wprowadzaniu nowych funkcjonalności. Poniżej krótka lista najważniejszych

Czytaj więcej »
GitLab - aktualizacja kontenera bazy danych

GitLab – aktualizacja kontenera bazy danych

Ostatnio chciałem dokonać aktualizacji GitLab-a w moim domowym labie. Nie wyszło. Podnosząc wersję oprogramowania GitLab-a, od dwóch lat nie aktualizowałem wersji bazy danych, która jest niezbędna do prawidłowego działania. O ile wersja GitLab 13.1.4 nadal

Czytaj więcej »
Przestał budować się obraz kontenera

Przestał budować się obraz kontenera

Częścią obrazów kontenerów, które używam w swoich środowiskach sieciowych zarządzam samodzielnie. Ich cykliczną budową zajmuje się Jenkins. Także kontenery z obrazem samego Jenkinsa są budowane w ten sposób. 10 sierpnia coś się jednak stało. Mój

Czytaj więcej »

Wtorki z Pythonem

Konstruktor klasy w Python

Konstruktor klasy

Współczesne języki programowania, zarówno te kompilowane jak i interpretowane, wykorzystują koncepcję programowania obiektowego. Polega ona na modularyzowaniu kodu programu na małe funkcjonalne części zwane obiektami. Są to swego rodzaju „klocki”, z których następnie składamy cały

Czytaj więcej »
Tabele w ASCII

Tabele w ASCII

Gdy piszę różnego rodzaju skrypty w języku Python nie raz spotkam się z koniecznością wyświetlenia informacji na konsoli. Zazwyczaj wykorzystuję do tego systemową funkcję print(), lub bibliotekę pprint. Duża ilość informacji najlepiej zaprezentować w formie

Czytaj więcej »
Listy część 2

Listy w Python, cz. 2

W pierwszej części pokazałem jak definiować listę oraz w jaki sposób odczytywać pojedyncze, lub całe grupy elementów listy. Operacji na listach i jej elementach jest nieco więcej. Raz utworzona lista nie jest obiektem stałym i

Czytaj więcej »
Enumerate i przeglądanie elementów listy

Enumerate() i przeglądanie elementów listy

Wykonując operacje na listach musimy jasno sprecyzować, do którego je elementu chcemy uzyskać dostęp. Dokonujemy tego za pomocą indeksów wskazując wprost interesujący nas element listy. Często jednak dane zapisane na liście przetwarzamy w pętli. Pokażę

Czytaj więcej »
Listy w Python, część 1

Listy w Python, cz. 1

Są takie umiejętności, które każdy programujący w dowolnym języku programowania musi umieć posiadać. Nie inaczej jest w Pythonie. W serii „wtorki z Pythonem” będę poruszał także bardziej podstawowe zagadnienia związane z programowaniem, które nie tylko

Czytaj więcej »
Słownik z funkcjami

Słownik z funkcjami

W zeszłym tygodniu pokazałem Ci w jaki sposób możesz uprościć swój kod. Wiesz już, że zamiast tworzyć duże konstrukcje warunkowe możesz generować nazwę wywoływanej metody „w locie” wykorzystując do tego zmienne. W tym tygodniu kontynuujemy

Czytaj więcej »