#!/usr/bin/env python3 # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. import argparse import errno import os def write_secret_to_file(path, secret): path = os.path.abspath(os.path.join(os.getcwd(), path)) try: os.makedirs(os.path.dirname(path)) except OSError as error: if error.errno != errno.EEXIST: raise print(f"Outputting secret to: {path}") with open(path, "w") as f: f.write(secret) def main(): parser = argparse.ArgumentParser(description="Store a dummy secret to a file") parser.add_argument( "-c", dest="content", action="store", help="content of the secret" ) parser.add_argument( "-f", dest="path", action="store", help="file to save secret to" ) result = parser.parse_args() write_secret_to_file(result.path, result.content) if __name__ == "__main__": main()