Skip to content

Instantly share code, notes, and snippets.

@dmitrygusev
Created January 18, 2017 12:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dmitrygusev/abbb1de20aec23c8516dd3272eb629dd to your computer and use it in GitHub Desktop.
Save dmitrygusev/abbb1de20aec23c8516dd3272eb629dd to your computer and use it in GitHub Desktop.
import re
import os
import sys
from subprocess import Popen, PIPE
scriptpath=os.path.dirname(os.path.abspath(__file__))
decrypt=os.path.join(scriptpath, 'decrypt')
input_str = sys.stdin.read()
def my_replace(match):
match = match.group(1)
p = Popen([decrypt, match], stdin=PIPE, stdout=PIPE, stderr=PIPE)
output, err = p.communicate()
if p.returncode != 0:
raise ValueError('Error decrypting "'+ match +'"\n' + err)
return output
print re.sub(r'aws:kms:[^:]+:(.*)', my_replace, input_str)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment