{"id":26157212,"url":"https://github.com/dcgadmin/dcg-codedependency-generator","last_synced_at":"2026-04-19T18:33:10.591Z","repository":{"id":281815623,"uuid":"933514454","full_name":"dcgadmin/dcg-codedependency-generator","owner":"dcgadmin","description":"Generate JSON from Oracle to upload on the DCG CodeDependency Analyzer portal.","archived":false,"fork":false,"pushed_at":"2025-02-16T07:27:59.000Z","size":12,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-11T09:58:31.413Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://dcgdependencyanalyzer.vercel.app/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dcgadmin.png","metadata":{},"created_at":"2025-02-16T06:16:49.000Z","updated_at":"2025-02-16T07:23:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"9adf1231-7ea7-4ca1-8419-7a292ab2acc7","html_url":"https://github.com/dcgadmin/dcg-codedependency-generator","commit_stats":null,"previous_names":["dcgadmin/dcg-codedependency-generator"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/dcgadmin/dcg-codedependency-generator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcgadmin%2Fdcg-codedependency-generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcgadmin%2Fdcg-codedependency-generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcgadmin%2Fdcg-codedependency-generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcgadmin%2Fdcg-codedependency-generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dcgadmin","download_url":"https://codeload.github.com/dcgadmin/dcg-codedependency-generator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcgadmin%2Fdcg-codedependency-generator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32017996,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"online","status_checked_at":"2026-04-19T02:00:07.110Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2025-03-11T09:58:29.769Z","updated_at":"2026-04-19T18:33:10.583Z","avatar_url":"https://github.com/dcgadmin.png","language":"Python","readme":"# DCG Dependency Analyzer Generator\n\n## Overview\nThe [**DCG Dependency Analyzer**](https://dcgdependencyanalyzer.vercel.app/) is a UI tool designed to analyze dependencies between various database objects in an Oracle database. It helps users understand relationships between views, procedures, functions, and other database objects. The tool is primarily intended for analyzing code object dependencies and exporting the results as JSON for visualization.\n\n## Features\n- Extracts and analyzes dependencies between Oracle database objects.\n- Provides structured output to simplify relationship analysis.\n- Supports filtering and searching for specific dependencies.\n- Generates detailed reports for further analysis.\n\n## Prerequisites\nBefore using the DCG Dependency Analyzer, ensure the following prerequisites are met:\n- Python 3.x installed\n- Oracle Instant Client installed\n- Required Python packages installed\n\n## Installation\n1. Clone this repository:\n   ```sh\n   git clone https://github.com/dcgadmin/dcg-codedependency-generator.git\n   cd dcg-codedependency-generator\n   ```\n2. Install Python virtual environment:\n   ```sh\n   python -m venv \u003cEnvironmentName\u003e\n   ```\n\n3. Activate the virtual environment:\n   - **Windows**:\n     ```sh\n     .\\\u003cEnvironmentName\u003e\\Scripts\\activate\n     ```\n   - **Linux/Mac**:\n     ```sh\n     source \u003cEnvironmentName\u003e/bin/activate\n     ```\n\n4. Install dependencies:\n   ```sh\n   pip install -r requirements.txt\n   ```\n\n5. Set up Oracle Instant Client and configure the necessary environment variables:\n   ```sh\n   export ORACLE_HOME=/path/to/oracle/instant/client\n   export PATH=$ORACLE_HOME:$PATH\n   export LD_LIBRARY_PATH=$ORACLE_HOME\n   ```\n\n## Configuration\nUpdate the env file (`.env`) with your Oracle database credentials:\n\n### **1. Standard Connection**\nIf you are using a host-based connection, update the `.env` file as follows:\n```txt\nUSERNAME=\u003c\u003cusername\u003e\u003e\nPASSWORD=\u003c\u003cpassword\u003e\u003e\nHOST=\u003c\u003chost\u003e\u003e\nPORT=\u003c\u003cport\u003e\u003e\nSERVICE_NAME=\u003c\u003cservicename\u003e\u003e\n```\n\n### **2. TNS Connection**\nIf you are using a TNS string for connection, update the `.env` file as follows:\n```txt\nUSERNAME=\u003c\u003cusername\u003e\u003e\nPASSWORD=\u003c\u003cpassword\u003e\u003e\nTNS_STRING=\u003c\u003ctnsstring\u003e\u003e\n```\n\n## Usage\nRun the script to analyze dependencies:\n```sh\npython3 dcganalyzer.py dependency-analyzer --help\n```\n\n### Command-line Options\n| Option         | Description |\n|---------------|-------------|\n| `--list_objects` | Lists all objects with dependencies in the schema |\n| `--object_name OBJECT_NAME` | Mentioned the object name to get the dependency details |\n| `--generate_config ` | Generate Oracle dependency json file |\n| `--schemaname ` | Schema name to generate dependency json |\n| `--include-table ` | Include Table objects as part of Dependency, Default False |\n\nExample:\n#### List all objects in the Oracle Schema\n```sh\npython3 dcganalyzer.py dependency-analyzer --schemaname \u003c\u003cSCHEMANAME\u003e\u003e --list-objects\n\nDatabase Objects List : ['PROCEDURE_A', 'PROCEDURE_B', 'PACKAGE_GLOBAL_VARIABLE_TEST', 'SPORT_TEAM_ID_TRG', 'PLAYER_ID_TRG', 'SPORTING_EVENT_ID_TRG', 'GENERATE_TICKETS', 'TICKETMANAGEMENT', 'SPORTING_EVENT_TICKET_INFO', 'TRIGGER0', 'PROCEDURE_C', 'PROCEDURE_D', 'SPORT_TEAM_SEQ', 'PLAYER_SEQ', 'SPORTING_EVENT_SEQ', 'SPORTING_EVENT_TICKET_SEQ', 'SPORTING_EVENT_INFO', 'TRIGGER1']\n```\n\n#### List all dependencies within a Object in Oracle.\n```sh\npython3 dcganalyzer.py dependency-analyzer --schemaname \u003c\u003cSCHEMANAME\u003e\u003e --object-name \u003c\u003cOBJECT-NAME\u003e\u003e\n```\n```console\nParent object : PROCEDURE_A\nDependencies\n+-----------+---------+----------------------------------------------------+\n| Type      |   Count | Names                                              |\n+===========+=========+====================================================+\n| PROCEDURE |       4 | PROCEDURE_B, PROCEDURE_C, PROCEDURE_C, PROCEDURE_D |\n+-----------+---------+----------------------------------------------------+\n```\n\n#### Generate Dependency JSON for Oracle Schema\n```sh\npython3 dcganalyzer.py dependency-analyzer --schemaname \u003c\u003cSCHEMANAME\u003e\u003e --generate_json\n```\n```console\nDependency json file is generate successfully : /home/dcgcore/codedependencyanalyzer/backend/dms_sample_dependency.json\n```\n\n#### Generate Dependency JSON for Oracle Schema with Tables\n```sh\npython3 dcganalyzer.py dependency-analyzer --schemaname \u003c\u003cSCHEMANAME\u003e\u003e --generate_json --include-table\n```\n```console\nDependency json file is generate successfully : /home/dcgcore/codedependencyanalyzer/backend/dms_sample_dependency.json\n```\n\n## Output\nThe tool generates dependency JSON using `--generate-config` option, that is used to upload on DCG Dependency Analyzer UI.\n\n## Troubleshooting\n- Ensure your Oracle credentials are correct.\n- Make sure Oracle Instant Client is installed and configured correctly.\n- Check if required Python packages are installed.\n\n## Credit\nTool is built upon ideas from AWS’s blog post on database object dependency analysis.\nCheck out the original work --\u003e 🔗 [Here](https://aws.amazon.com/blogs/database/analyze-amazon-rds-for-oracle-database-object-dependencies/)  \n\n\n## Contact\nFor any issues or feature requests, Please contact us on contact@datacloudgaze.com.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdcgadmin%2Fdcg-codedependency-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdcgadmin%2Fdcg-codedependency-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdcgadmin%2Fdcg-codedependency-generator/lists"}