Skip to content

Instantly share code, notes, and snippets.

@amitsaha
amitsaha / rpm_vercmp.py
Created January 30, 2014 03:08
Check two RPMs and print which is the newer of the two.
"""
Usage:
rpm_vercmp.py <rpmfile1> <rpmfile2>
Result:
RPM which is newer of the two or
'Same version'
"""
@amitsaha
amitsaha / bstree.py
Created February 5, 2014 21:42
Binary Search Tree
"""
Binary search tree
With help from http://www.laurentluce.com/posts/binary-search-tree-library-in-python/
"""
from collections import deque
class Node:
def __init__(self, data):
self.left = None
@amitsaha
amitsaha / forker.py
Created February 9, 2014 11:57
Code for experimenting with session ID, process group ID, and signal handling
import os
import signal
def sighup_handler(signum, frame):
print 'SIGHUP handled by', os.getpid()
def sigtstp_handler(signum, frame):
print 'SIGTSTP handled by', os.getpid()
@amitsaha
amitsaha / rng_test.py
Created March 3, 2014 11:43
RNG Schema
import lxml.etree
xml = '''<job>
<recipeSet>
<recipe>
<distroRequires>
<distro_name op="=" value="BlueShoeLinux5-5"/>
</distroRequires>
<hostRequires>
<system>
@amitsaha
amitsaha / fedora.docker
Created April 14, 2014 07:53
Fedora Dockerfile for running lshw tests
# use: docker run -i -t -v $PWD:/home/lshw/lshw_test:rw -u root eded06474d8f ./run-tests.sh
# https://index.docker.io/_/centos/
FROM fedora
MAINTAINER Beaker developers
# Install dependencies.
RUN yum -y install fakeroot fakechroot docbook-utils make gcc-c++
@amitsaha
amitsaha / fakechroot.spec
Created April 22, 2014 06:19
RPM Spec file for fakechroot-2.17.2
Summary: Gives a fake chroot environment
Name: fakechroot
Version: 2.17.2
Release: 2%{?dist}
License: LGPLv2+
Group: Development/Tools
URL: http://fakechroot.alioth.debian.org/
Source0: http://ftp.debian.org/debian/pool/main/f/fakechroot/%{name}_%{version}.orig.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
Requires: fakechroot-libs = %{version}-%{release}
@amitsaha
amitsaha / docker.rst
Last active August 29, 2015 14:02
docker tips

Basics

Create a container with an interactive shell: docker run -t fedora -i /bin/bash

# make changes (install a server)

commit using docker commit <container id>

# run a server program and expose

@amitsaha
amitsaha / compare.bash
Last active August 29, 2015 14:02
Compare lshw and smolt's results in beaker-system-scan
#!/bin/bash
git clone git://git.beaker-project.org/beaker-system-scan
pushd beaker-system-scan
git checkout master
python setup.py install
smolt=`beaker-system-scan -d -j 2> /dev/null`
# fetch lshw patch
git fetch http://gerrit.beaker-project.org/beaker-system-scan refs/changes/39/3139/5 && git checkout FETCH_HEAD
git checkout -b lshw
# define _GNU_SOURCE
# include <stdio.h>
# include <stdlib.h>
# include <string.h>
# include <unistd.h>
# include <sched.h>
# define SYS_IND_CPU_PATH "/sys/devices/system/cpu/cpu"
# define KERNEL_MAX_CPU_PATH "/sys/devices/system/cpu/kernel_max"