def test_file_exists(): filename = TEMP_FOLDER + "pytest.txt" assert file_exists(filename) is False with open(filename, "w+") as f: json.dump([], f) assert file_exists(filename) is True os.remove(filename)
def test_save_json(): filename = TEMP_FOLDER + "test.json" data = {"test": True} if file_exists(filename): os.remove(filename) assert file_exists(filename) is False save_json(filename, data) assert file_exists(filename) data = read_json(filename) assert data["test"] is True
def test_load_deployer(deployer, config, configfile): home_folder = configfile["cli"].get("home_folder") test_deployer = home_folder + "/test.json" assert file_exists(test_deployer) is False save_deployer(deployer, config) assert file_exists(test_deployer) is True saved_deployer = load_deployer(config, "test") for key in saved_deployer: assert saved_deployer[key] == deployer[key] delete_deployer(config, "test") assert file_exists(test_deployer) is False
def test_read_yaml(): filename = TEMP_FOLDER + "test.yaml" data = {"test": True} with open(filename, "w+") as f: yaml.dump(data, f) assert file_exists(filename) data = read_yaml(filename) assert data["test"] is True
def config(ctx, name): """Display resources used by a deployer""" home_folder = ctx.obj.config.get("cli", "home_folder", "~/.freeldep") config_file = home_folder + "/" + name + ".json" if file_exists(config_file): config = read_json(config_file) click.echo(json.dumps(config, indent=4)) else: raise click.BadParameter(f"This deployer {name} does not exist")
def deploy_project( deployer, project, stack_file, package_script="./bin/package.sh", dryrun=False, output_location=None, ): if not file_exists(stack_file): raise FileNotFoundError("No stack to deploy") stacks = read_yaml(stack_file) if file_exists(package_script) and not execute_script(package_script): raise RuntimeError("Packge script failed") Compiler.trigger_deployment( deployer, stacks, dryrun=dryrun, output_folder=output_location )