Skip to content

Instantly share code, notes, and snippets.

@Suor
Suor / pull_db
Created March 10, 2014 06:38
Pull DB to development environment script
#!/bin/bash
BACKUP_SERVER=kronos.metadesign.ru
BACKUP_DIR=/backup/zeus/all/
RUAUTO_BACKUP_PATH=/db/dumps/pgsql/ruauto.sql.gz
DUMP_TMP=tmp/db.sql
DUMP_TMP_GZ="$DUMP_TMP.gz"
# Text color variables
@Suor
Suor / mediavault.conf
Created February 27, 2014 09:34
mediavault nginx config
proxy_cache_path /home/mediavault/cache-mem levels=2:2 keys_zone=ram:400m inactive=48h max_size=26G;
proxy_cache_path /home/mediavault/cache-ssd levels=2:2:2 keys_zone=ssd:800m inactive=30d max_size=160G;
client_body_temp_path /home/mediavault/cache-mem/tmp;
open_file_cache max=5000 inactive=600s;
open_file_cache_valid 1200s;
open_file_cache_min_uses 2;
open_file_cache_errors on;
server {
@Suor
Suor / log_requests.py
Last active February 3, 2020 18:58
Log HTTP requests in Django
import re, logging
from django.conf import settings
from django.core.handlers.wsgi import STATUS_CODE_TEXT
req_handler = logging.FileHandler(settings.HOME_DIR + '/logs/requests.log')
req_handler.setLevel(logging.INFO)
formatter = logging.Formatter('[%(asctime)s] %(message)s')
req_handler.setFormatter(formatter)
@Suor
Suor / group_by_lead.py
Created November 19, 2013 05:08
Grouping items by lead node
# Original code
from funcy import ireductions
def itemcollector(last, x):
if "Node ID" in x:
return x
if "files" not in last:
last["files"] = []
last["files"].append(x)
@Suor
Suor / hip_types.py
Created August 19, 2013 07:27
Thats only for hip types, not for me
In [1]: class T(tuple): pass
In [2]: t = (1, 2)
In [3]: t.__class__ = T
TypeError: __class__ assignment: only for heap types
@Suor
Suor / apply_schema.py
Created June 2, 2013 05:02
apply_schema.py
from funcy import join
def apply_el(data, el):
if isinstance(el, str):
return {el: data.get(el)}
elif isinstance(el, dict):
return {
k: apply_schema(data.get(k), v)
for k, v in el.items()
}
@Suor
Suor / dict-comprehension-review.py
Created March 15, 2013 07:57
Dict comprehension review
errors = {}
for key, value in bundle.data.items():
if not some_test(value):
if key not in errors:
errors[key] = []
errors[key].append('required.')
# R1: использовать defaultdict
from collections import defaultdict
@Suor
Suor / 00_original.py
Last active December 14, 2015 09:19
Code Review
# Это оригинальный код, всё веселье ниже и по пунктам
limit = 5
def intify(array):
latest = []
for i in array:
row = []
for j in i:
row.append(int(j))
@Suor
Suor / pkdiff3
Created February 14, 2013 06:07
kdiff3 call wrapper for kdesvn
#!/usr/bin/perl
s~^.*//~/~ for @ARGV;
system "kdiff3", @ARGV;
# kdiff3 %o %m %n -o %t
suor$ npm install node-gd
npm http GET https://registry.npmjs.org/node-gd
npm http 304 https://registry.npmjs.org/node-gd
> [email protected] install /home/suor/projects/mediavault/node_modules/node-gd
> node-waf configure build
Checking for program g++ or c++ : /usr/bin/g++
Checking for program cpp : /usr/bin/cpp
Checking for program ar : /usr/bin/ar