I hereby claim:
- I am christophchamp on github.
- I am xtof (https://keybase.io/xtof) on keybase.
- I have a public key whose fingerprint is 8D0A 5408 3B16 7656 6B65 EBAC 26D5 622E 8B70 5E64
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
# SEE: http://docs.rackspace.com/networks/api/v2/cn-devguide/content/delete_virt_interface_api.html | |
USERNAME=<REDACTED> # This is your Rackspace account's username | |
API_KEY=<REDACTED> # This is your Rackspace account's API Key | |
ACCOUNT=<REDACTED> # This is your Rackspace account number | |
REGION=dfw # Or, "iad", "ord", "lon", "syd", "hkg" | |
# Authenticate to obtain your 24-hour valid token: | |
TOKEN=`curl -s -XPOST https://identity.api.rackspacecloud.com/v2.0/tokens -d'{"auth":{"RAX-KSKEY:apiKeyCredentials":{"username":"'$USERNAME'","apiKey":"'$API_KEY'"}}}' -H"Content-type:application/json" | python -c 'import sys,json;data=json.loads(sys.stdin.read());print data["access"]["token"]["id"]'` |
# NAME: pyrax_create_cloud_server | |
# AUTHOR: Christoph Champ | |
# DESCRIPTION: This script creates a Cloud Server in your Rackspace account. | |
# It then creates an image of that server, and, finally, creates a new server | |
# from that saved image. | |
# | |
# NOTES: Within each of the created VMs, the generated credentials are in | |
# master_server.adminPass and clone_server.adminPass. To access the box, use | |
# master_server.accessIPv4 and clone_server.accessIPv4. | |
# However, it is _much_ better/safer/wiser to use SSH keypairs. |
#!/bin/bash | |
# SEE: http://docs.rackspace.com/files/api/v1/cf-devguide/content/Extract_Archive-d1e2338.html | |
# NOTE: That "Content-Type: " _must_ be blank if you want the API to guess the types! | |
token=`./curl_authenticate.sh |grep ^X-Auth-Token |cut -d: -f2` | |
tarball=/home/champ/tmp/test_cf_extract.tar.gz | |
container=tmp | |
region=dfw | |
curl -i -XPUT \ | |
-H "X-Auth-Token: $token" \ | |
-H "Content-Type: " \ |
$ REGION=dfw; CONTAINER_NAME=sandbox; for i in *.png; do curl -XPUT -T $i -v -H "X-Auth-Token:$MYRAXTOKEN" -H"Content-Type: text/plain" "https://storage101.${REGION}1.clouddrive.com/v1/MossoCloudFS_ffff-ffff-ffff-ffff-ffff/${CONTAINER_NAME}/$i"; done |
$ MYRAXTOKEN=`curl -s -XPOST https://identity.api.rackspacecloud.com/v2.0/tokens -d'{"auth":{"RAX-KSKEY:apiKeyCredentials":{"username":"$MYRAXUSERNAME","apiKey":"'$MYRAXAPIKEY'"}}}' -H"Content-type:application/json" | python -c 'import sys,json;data=json.loads(sys.stdin.read());print data["access"]["token"]["id"]'` |
#!/usr/bin/python | |
import os | |
import pyrax | |
YOUR_USERNAME="" | |
YOUR_API_KEY="" | |
YOUR_REGION="" # E.g., "ORD", "DFW", etc. | |
YOUR_CONTAINER_NAME="" | |
#pyrax.set_setting('identity_type', 'rackspace') |
# http://docs.rackspace.com/files/api/v1/cf-devguide/content/Create_TempURL-d1a444.html | |
# https://community.rackspace.com/developers/f/7/t/798 | |
import hmac | |
from hashlib import sha1 | |
from sys import argv | |
from time import time | |
if len(argv) != 5: | |
print 'Syntax: <method> <url> <seconds> <key>' | |
print 'Example: GET https://storage101.dfw1.clouddrive.com/v1/' \ |
# Calculate amino acid codon frequency | |
from collections import defaultdict | |
#the first 600 nucleotides from GenBank: AAHX01097212.1 | |
rna = ("tcccccgcagcttcgggaacgtgcgggctcgggagggaggggcctggcgccgggcgcgcg" | |
"cctgcgccccaccccgccccaccctggcgggtctcgcgcgcccggcccgcctcctgtcaa" | |
"ccccagcgcggcggtcaggtggtccccagcccttggccccagcctccagcttcctggtcc" | |
"ctcgggctctgagtcctgtctccggcagatcgcctttctgattgttctcctgcgcagctg" | |
"gaggtgtatagcccctagccgagctatggtgcctcagcagatgtgaggaggtagtgggtc" | |
"aggataaacccgcgcactccataataacgtgccagggctcagtgacttgggtctgcatta") |
def vet_email(email_address): | |
"""Vet email addresses. The local part (the part before the '@') must not | |
exceed 64 characters and the domain part (after the '@') must not | |
exceed 255 characters. The entire email address length must not exceed | |
320 characters. | |
""" | |
local_part = re.sub(r'^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$', '\\1', email_address) | |
domain_part = re.sub(r'^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$', '\\2', email_address) | |
if len(local_part) > 64: | |
return False |