From 5d53981423b2243e6d9281a400c653d48b58ae1c Mon Sep 17 00:00:00 2001 From: amar Date: Tue, 4 Apr 2023 12:05:21 +0200 Subject: [PATCH] add TP-03 --- TP_03/config/README.md | 5 ++ TP_03/data/README.md | 5 ++ TP_03/inventory/README.md | 5 ++ TP_03/scripts/README.md | 5 ++ TP_03/scripts/create_config.py | 41 ++++++++++++ TP_03/scripts/run_nornir.py | 117 +++++++++++++++++++++++++++++++++ TP_03/templates/README.md | 5 ++ 7 files changed, 183 insertions(+) create mode 100644 TP_03/config/README.md create mode 100644 TP_03/data/README.md create mode 100644 TP_03/inventory/README.md create mode 100644 TP_03/scripts/README.md create mode 100644 TP_03/scripts/create_config.py create mode 100644 TP_03/scripts/run_nornir.py create mode 100644 TP_03/templates/README.md diff --git a/TP_03/config/README.md b/TP_03/config/README.md new file mode 100644 index 0000000..8369395 --- /dev/null +++ b/TP_03/config/README.md @@ -0,0 +1,5 @@ +# CONFIG + +**This directory is required.** + +The config directory contains your Cisco config files. diff --git a/TP_03/data/README.md b/TP_03/data/README.md new file mode 100644 index 0000000..3b17f7b --- /dev/null +++ b/TP_03/data/README.md @@ -0,0 +1,5 @@ +# DATA + +**This directory is required.** + +The data directory contains your JSON or YAML files. diff --git a/TP_03/inventory/README.md b/TP_03/inventory/README.md new file mode 100644 index 0000000..065f03e --- /dev/null +++ b/TP_03/inventory/README.md @@ -0,0 +1,5 @@ +# INVENTORY + +**This directory is required.** + +The inventory directory contains your JSON or YAML files to store your cisco devices. diff --git a/TP_03/scripts/README.md b/TP_03/scripts/README.md new file mode 100644 index 0000000..20c8054 --- /dev/null +++ b/TP_03/scripts/README.md @@ -0,0 +1,5 @@ +# SCRIPTS + +**This directory is required.** + +The scripts directory contains your python scripts. diff --git a/TP_03/scripts/create_config.py b/TP_03/scripts/create_config.py new file mode 100644 index 0000000..d51d499 --- /dev/null +++ b/TP_03/scripts/create_config.py @@ -0,0 +1,41 @@ +import json +from jinja2 import Template, Environment, FileSystemLoader + +env = Environment(loader=FileSystemLoader("templates")) + + +def load_json_data_from_file(file_path): + pass + +def render_network_config(template_name, data): + pass + +def save_built_config(file_name, data): + pass + + +def create_config_cpe_lyon_batA(): + pass + + +def create_config_cpe_lyon_batB(): + pass + +if __name__ == "__main__": + """ + process question 3 to 5: + """ + #question 3: + #config = create_config_cpe_lyon_batA() + + #question 4: + # save_built_config('config/R1_CPE_LYON_BAT_A.conf', config.get('r1')) + # save_built_config('config/R2_CPE_LYON_BAT_A.conf', config.get('r2')) + # save_built_config('config/ESW1_CPE_LYON_BAT_A.conf', config.get('esw1')) + + #question 5: + # config = create_config_cpe_lyon_batB() + # save_built_config('config/R1_CPE_LYON_BAT_B.conf', config.get('r1')) + # save_built_config('config/R2_CPE_LYON_BAT_B.conf', config.get('r2')) + # save_built_config('config/ESW1_CPE_LYON_BAT_B.conf', config.get('esw1')) + \ No newline at end of file diff --git a/TP_03/scripts/run_nornir.py b/TP_03/scripts/run_nornir.py new file mode 100644 index 0000000..a9f21ea --- /dev/null +++ b/TP_03/scripts/run_nornir.py @@ -0,0 +1,117 @@ + + +def question_13(nr): + pass + +def question_14(nr): + pass + +def question_15(nr): + pass + +def question_16(nr): + pass + +def question_17(nr): + pass + +def question_18(nr): + pass + +def question_19(nr): + pass + +def question_20(nr): + pass + +def question_21(nr): + pass + +def question_22(nr): + pass + +def question_23(nr): + pass + +def question_24(nr): + pass + +def question_25(nr): + pass + +def question_26(nr): + pass + +def question_27(nr): + pass + +def question_29(nr): + pass + +def question_30(nr): + pass + +def question_32(nr): + pass + +def question_33(nr): + pass + +def question_34(nr): + pass + +def question_35(nr): + pass + +def question_36(nr): + pass + +def question_37(nr): + pass + +def question_38(nr): + pass + +def question_39(nr): + pass + +def question_39_d(nr): + pass + +def question_40(nr): + pass + + +if __name__ == "__main__": + #nr = InitNornir(config_file="inventory/config.yaml") + + #question_13(nr) + #question_14(nr) + #question_15(nr) + #question_16(nr) + #question_17(nr) + #question_18(nr) + #question_19(nr) + #question_20(nr) + #question_21(nr) + #question_22(nr) + #question_23(nr) + #question_24(nr) + #question_25(nr) + #question_26(nr) + #question_27(nr) + #question_29(nr) + #question_30(nr) + + #question_32(nr) + #question_33(nr) + #question_34(nr) + #question_35(nr) + #question_36(nr) + #question_37(nr) + #question_38(nr) + #question_39(nr) + #question_39_d(nr) + + #question_40(nr) + pass diff --git a/TP_03/templates/README.md b/TP_03/templates/README.md new file mode 100644 index 0000000..182012e --- /dev/null +++ b/TP_03/templates/README.md @@ -0,0 +1,5 @@ +# TEMPLATES + +**This directory is required.** + +The templates directory contains your jinja.j2 files.