def create_dict(a1, a2, a3, a4):
methods = [a1, a2, a3, a4]
my_list = []
for method in methods:
my_dict = {"method": f'"{method}"', "permission": None}
my_list.append(my_dict)
return my_list
# Example usage
inputs = ("a1", "a2", "a3", "a4")
output = create_dict(*inputs)
for item in output:
print(item)
import yaml
def create_dict(yaml_input):
input_dict = yaml.safe_load(yaml_input)
methods = input_dict["methods"]
my_list = []
for method in methods:
my_dict = {"method": f'"{method}"', "permission": None}
my_list.append(my_dict)
return my_list
# Example usage
yaml_input = """
methods:
- a1
- a2
- a3
- a4
"""
output = create_dict(yaml_input)
for item in output:
print(item)
import yaml
def create_dict(yaml_input):
input_dict = yaml.safe_load(yaml_input)
methods = input_dict["methods"]
my_list = []
for method in methods:
my_dict = {"method": f'"{method}"', "permission": "null"}
my_list.append(my_dict)
return my_list
# Example usage
with open('input.yaml', 'r') as f:
yaml_input = f.read()
output = create_dict(yaml_input)
for item in output:
print(f"{{\n method = {item['method']}\n permission = {item['permission']}\n}},")
#!/bin/bash
# Load YAML input file
input=$(cat input.yaml)
# Parse YAML input using yq
methods=$(echo $input | yq e '.methods | .[]' -)
# Loop over each method and create a dictionary
output=""
for method in $methods
do
output+="\n{\n method = \"$method\"\n permission = null\n},"
done
# Print output
echo -e $output
import argparse
import yaml
def create_dict(yaml_input):
input_dict = yaml.safe_load(yaml_input)
methods = input_dict["methods"]
my_list = []
for method in methods:
my_dict = {"method": f'"{method}"', "permission": "null"}
my_list.append(my_dict)
return my_list
# Parse command-line arguments
parser = argparse.ArgumentParser()
parser.add_argument("-i", "--input_file", required=True, help="path to YAML input file")
args = parser.parse_args()
# Read input YAML file
with open(args.input_file, 'r') as f:
yaml_input = f.read()
# Create dictionary and print output
output = create_dict(yaml_input)
for item in output:
print(f"{{\n method = {item['method']}\n permission = {item['permission']}\n}},")
python script.py --input_file input.yaml
ingress_policies:
- from:
sources:
access_levels:
- "*" # Allow Access from everywhere
identities: "{{var.read_bucket_identities}}"
to:
resources:
- "*"
operations:
storage.googleapis.com:
methods:
- "google.storage.objects.get"
- "google.storage.objects.list"
convert python
import yaml
import hcl2
# Load YAML file
with open('ingress_policies.yaml', 'r') as f:
data = yaml.load(f, Loader=yaml.FullLoader)
# Convert YAML to HCL
hcl = hcl2.dumps({'ingress_policies': data['ingress_policies']})
# Save HCL file
with open('ingress_policies.hcl', 'w') as f:
f.write(hcl)