{"id":37079338,"url":"https://github.com/umurarslan/excel2config","last_synced_at":"2026-01-14T09:36:12.435Z","repository":{"id":45977905,"uuid":"514978771","full_name":"umurarslan/excel2config","owner":"umurarslan","description":"Simple CLI tool generates network configuration based on Excel sheets which include Jinja2 template and data tables. ","archived":false,"fork":false,"pushed_at":"2023-07-07T23:21:18.000Z","size":152,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-04T21:59:00.650Z","etag":null,"topics":["cisco","config-generator","configuration","excel","import-excel","jinja2","network","network-automation","network-configuration","network-programming","networking","networking-in-python","nokia","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/umurarslan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-07-17T23:29:31.000Z","updated_at":"2025-03-12T09:03:29.000Z","dependencies_parsed_at":"2023-02-14T02:16:11.564Z","dependency_job_id":null,"html_url":"https://github.com/umurarslan/excel2config","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/umurarslan/excel2config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umurarslan%2Fexcel2config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umurarslan%2Fexcel2config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umurarslan%2Fexcel2config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umurarslan%2Fexcel2config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/umurarslan","download_url":"https://codeload.github.com/umurarslan/excel2config/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umurarslan%2Fexcel2config/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28416120,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T08:38:59.149Z","status":"ssl_error","status_checked_at":"2026-01-14T08:38:43.588Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cisco","config-generator","configuration","excel","import-excel","jinja2","network","network-automation","network-configuration","network-programming","networking","networking-in-python","nokia","python"],"created_at":"2026-01-14T09:36:11.781Z","updated_at":"2026-01-14T09:36:12.424Z","avatar_url":"https://github.com/umurarslan.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Excel2Config\n\nExcel2Config simple CLI tool generates network configuration based on Excel sheets which include Jinja2 template and data tables. \n\n---\n\n## Requirements\n\n[Python \u003e= 3.9](https://www.python.org/downloads/)\n\n\u003e For Windows, select the **Add Python 3.x to PATH** checkbox during installation.\n\n---\n\n## Installation\n\n```\npip install excel2config\n```\n\n### Installation Check\n\nAfter installation **excel2config** command added to **System Path** and can be executed from any path easily as below:\n\n```\n\u003e excel2config -h\nusage: excel2config [-h] [excelfile]\n\npositional arguments:\n  excelfile   excel file path [e.g. srlinux_config_1.xlsx] (OPTIONAL, default: config.xlsx)\n\noptions:\n  -h, --help  show this help message and exit\n```\n\n---\n\n## Usage\n\n### Simple Usage\n\nRun **excel2config** command with **Excel File Path** from any path and check text output files in **Output Folder**:\n\n```\nexcel2config \u003cExcel_File_Path\u003e\n```\n\nExample for Windows:\n\n```\nPS C:\\Users\\alg\\desktop\u003e excel2config C:\\Users\\alg\\Desktop\\test\\config.xlsx\n2022-07-17 09:07:40.275 INFO : OUTPUT FOLDER CREATED \u003cOUTPUTS_config_20220717-090740\u003e\n2022-07-17 09:07:40.447 INFO : [C:\\Users\\alg\\Desktop\\test\\config.xlsx] / [\u003cWorksheet \"NETWORK_INSTANCE\"\u003e] START!\n2022-07-17 09:07:40.463 INFO : [C:\\Users\\alg\\Desktop\\test\\config.xlsx] / [\u003cWorksheet \"NETWORK_INSTANCE\"\u003e] DONE!\n2022-07-17 09:07:40.479 INFO : ALL DONE!\n!!! ALL DONE! Press any key to exit...\n\nPS C:\\Users\\alg\\desktop\u003e dir OUTPUTS_config_20220717-090740\n\n    Directory: C:\\Users\\alg\\desktop\\OUTPUTS_config_20220717-090740\n\nMode                 LastWriteTime         Length Name\n----                 -------------         ------ ----\n-a----        17/07/2022     09:07            426 leaf1.txt\n-a----        17/07/2022     09:07            258 leaf2.txt\n\nPS C:\\Users\\alg\\desktop\u003e\n```\n\n### Excel File \n\n\u003e Only **.xlsx** Excel file format supported.\n\n\u003e For new features (e.g. Custom Jinja Function) check latest example Excel in project **/examples** folder.\n\nIn Excel File first sheet is **GLOBAL_VARS**, this sheet optional and only for global template variables such as host-based (**e.g. leaf1**), all-host (**ALL**) and generator (**GEN**).\n\n***GLOBAL_VARS Excel Sheet:***\n\n![GLOBAL_VARS Excel Sheet](https://raw.githubusercontent.com/umurarslan/excel2config/main/img/img1.PNG)\n\nBesides GLOBAL_VARS sheet, other sheets have two parts:\n\n- **Jinja2 Template (A2 cell):** Jinja2 \"IF\", \"FOR\" and Filters can be used in template cell.  \n- **Data Tables (Header rows start with B2 cell, Variable rows start with B3 cell):** Range and generator supported in variable rows.\n\n\u003e Sheet name and Data Header name must have only **[A-Za-z0-9_]** (alphanumeric with underscore) characters and **not start with numeric** characters.\n\n\u003e Sheet name starts with underscore \"_\" will be ignored. (e.g. **_TEST**)\n\nAs below example Jinja template render with every data table line and append **host** (e.g. leaf1) output text file.\n\n***INTERFACE_CONFIG Excel Sheet:***\n\n![INTERFACE_CONFIG Excel Sheet](https://raw.githubusercontent.com/umurarslan/excel2config/main/img/img2.PNG)\n\n***INTERFACE_CONFIG \"leaf1.txt\" outputs:***\n```\ninterface ethernet 1/1/1\n  description red_1\n  no shutdown\n  mtu 1500\n  vrf member red\n  no ip redirects\n  ip address 10.1.1.100/24\n```\n\n***OTHER_CONFIG Excel Sheet:***\n\n![OTHER_CONFIG Excel Sheet](https://raw.githubusercontent.com/umurarslan/excel2config/main/img/img3.PNG)\n\n\n\n\nExample Excel file and outputs are in project **/examples** folder.\n\n*EOF*\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumurarslan%2Fexcel2config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fumurarslan%2Fexcel2config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumurarslan%2Fexcel2config/lists"}