Skip to content

Instantly share code, notes, and snippets.

View sergeyhush's full-sized avatar
⌨️
Coding....

Sergey Sudakovich sergeyhush

⌨️
Coding....
View GitHub Profile
@sergeyhush
sergeyhush / allow_clients.conf
Created October 16, 2017 21:11
NGINX allow/block location by request method and IP
geo $allow_client {
default no;
10.0.1.183 yes;
}
@sergeyhush
sergeyhush / etc_hosts_sorted.sh
Last active March 6, 2018 21:06
Sort /etc/hosts
#!/bin/sh
# Sort /etc/hosts file IPv4 only skipping empty lines and commented out ones
sort -t . -k 1,1n -k 2,2n -k 3,3n -k 4,4n /etc/hosts | grep . | grep -v '^#'
@sergeyhush
sergeyhush / fake_api.py
Created June 28, 2018 20:28
Fake API server
import os
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/api-token-auth/', methods=['POST'])
def auth():
# Token generated via
# https://jwt.io/#debugger-io?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InNlcmdleUBjdW11bHVzbmV0d29ya3MuY29tIiwibmFtZSI6IlNlcmdleSJ9.1-Tg3LW1QTgNkHrBQR2C2I3e_uiY2olfxlsFctAgwrg
return jsonify({
@sergeyhush
sergeyhush / fake_api_driver.sh
Created June 28, 2018 20:30
Fake API server driver
#!/bin/sh
PORT=8002
SERVER_NAME="127.0.0.1:${PORT}"
trap cleanup EXIT
cleanup(){
kill $(lsof -ti tcp:$PORT)
}
[ ! -d venv ] && virtualenv vevn
{
"basics": {
"name":"Sergey Sudakovich",
"label": "Software Enigneer",
"email": "sergey@sudakovich.com",
"summary": "Experiened software enigneer who I passionate about automation",
"profiles":[ {
"network": "Github",
"username":"sergeyhush",
"url": "https://github.com/sergeyhush"
@sergeyhush
sergeyhush / post-receive
Last active August 30, 2021 11:47
Post-receive git hook to check if file changed
#!/bin/bash
WATCH_FILE="abc.123"
while read oldrev newrev refname; do
if [ "$refname" = "refs/heads/master" ]; then
if git diff-tree --name-only -r -z $oldrev $newrev | grep --quiet $WATCH_FILE ; then
# WATCH_FILE changed...
fi
fi
done
@sergeyhush
sergeyhush / jenkins-create-node.sh
Last active September 19, 2022 11:38
Jenkins create new node
#!/bin/bash
JENKINS_URL=$1
NODE_NAME=$2
NODE_SLAVE_HOME='/home/build/slave'
EXECUTORS=1
SSH_PORT=22
CRED_ID=$3
LABELS=build
USERID=${USER}