{"id":18750469,"url":"https://github.com/os-climate/osc-dm-proxy-srv","last_synced_at":"2026-01-27T20:12:33.851Z","repository":{"id":239631835,"uuid":"797872694","full_name":"os-climate/osc-dm-proxy-srv","owner":"os-climate","description":"Climate Data Bazaar: Proxy/Routing Service","archived":false,"fork":false,"pushed_at":"2024-09-17T16:05:39.000Z","size":37,"stargazers_count":1,"open_issues_count":1,"forks_count":2,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-26T18:04:54.004Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/os-climate.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-08T16:47:08.000Z","updated_at":"2024-09-17T16:05:43.000Z","dependencies_parsed_at":"2024-11-07T17:12:06.269Z","dependency_job_id":"4d44550d-5973-4f37-8433-13e35999a703","html_url":"https://github.com/os-climate/osc-dm-proxy-srv","commit_stats":null,"previous_names":["os-climate/osc-dm-proxy-srv"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/os-climate%2Fosc-dm-proxy-srv","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/os-climate%2Fosc-dm-proxy-srv/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/os-climate%2Fosc-dm-proxy-srv/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/os-climate%2Fosc-dm-proxy-srv/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/os-climate","download_url":"https://codeload.github.com/os-climate/osc-dm-proxy-srv/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248647257,"owners_count":21139081,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":"2024-11-07T17:11:59.244Z","updated_at":"2026-01-27T20:12:28.808Z","avatar_url":"https://github.com/os-climate.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- markdownlint-disable --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003e [!IMPORTANT]\n\u003e On June 26 2024, Linux Foundation announced the merger of its financial services umbrella, the Fintech Open Source Foundation ([FINOS](https://finos.org)), with OS-Climate, an open source community dedicated to building data technologies, modeling, and analytic tools that will drive global capital flows into climate change mitigation and resilience; OS-Climate projects are in the process of transitioning to the [FINOS governance framework](https://community.finos.org/docs/governance); read more on [finos.org/press/finos-join-forces-os-open-source-climate-sustainability-esg](https://finos.org/press/finos-join-forces-os-open-source-climate-sustainability-esg)\n\u003c!-- prettier-ignore-end --\u003e\n\u003c!-- markdownlint-enable --\u003e\n\n# osc-dm-proxy-srv - Data Mesh Proxy Server\n\nosc-dm-proxy-srv is a proxy for Broda Group Software's\nData Mesh platform. This proxy maps external endpoints (host:port/path)\nto internal endpoints.\n\nFull documentation is available in in the\n[osc-dm-mesh-doc](https://github.com/brodagroupsoftware/osc-dm-mesh-doc)\nrepo.\n\nThis application interacts with other applications. You can run\nthe full set of applications by following instructions in the\n[osc-dm-mesh-doc](https://github.com/brodagroupsoftware/osc-dm-mesh-doc)\nrepo.\n\nThe remaining sections explain how to Dockerize the application\nas well as providing a few developer notes.\n\n## Prerequisites\n\nPython must be available, preferably in a virtual environment (venv).\n\n## Setting up your Environment\n\nSome environment variables are used by various source code and scripts.\nSetup your environment as follows (note that \"source\" is used)\n~~~~\nsource ./bin/environment.sh\n~~~~\n\nIt is recommended that a Python virtual environment be created.\nWe have provided several convenience scripts to create and activate\na virtual environment. To create a new virtual environment using\nthese convenience scripts, execute the following (this will\ncreate a directory called \"venv\" in your current working directory):\n~~~~\n$PROJECT_DIR/bin/venv.sh\n~~~~\n\nOnce your virtual enviornment has been created, it can be activated\nas follows (note: you *must* activate the virtual environment\nfor it to be used, and the command requires \"source\" to ensure\nenvironment variables to support venv are established correctly):\n~~~~\nsource $PROJECT_DIR/bin/vactivate.sh\n~~~~\n\nInstall the required libraries as follows:\n~~~~\npip install -r requirements.txt\n~~~~\n\nNote that if you wish to run test cases then you will need\nto also install \"pytest\" (it is not installed by default as\nit is a development rather than product dependency).\n~~~~\npip install pytest\n~~~~\n\n## Creating a Docker Image\n\n\nA Dockerfile is provided for this service. A docker image for this service can be\ncreating using the following script, which will create but not publish the image:\n\n```\n$PROJECT_DIR/bin/dockerize.sh\n```\n\nIn order to publish this image the `DOCKER_TOKEN` environment variable\nmust be set to a dockerhub token that is associated with the username set in the\n`DOCKER_USERNAME` environment variable. Additionally, the\n`DOCKER_REGISTRY` environment variable must be set if publishing\nto a custom registry. \n\nThen the below command can be executed to create and publish an image,\nwith the `--publish` argument controlling whether the image is published,\nand where it is published to. The `--latest` argument controls whether a\nspecific version is published, or whether this version will also be published\nas \"latest\". The `--version` argument controls what specific version number\nthe image will have when published.\n\n```console\n$PROJECT_DIR/bin/dockerize.sh --publish [false|custom|dockerhub] [--latest] [--version \u003cversion\u003e]\n```\n\n## Starting the Service\n\nThis service is designed to work with other services and\ncan be started with the full set of Data Mesh components.\nInformation about starting the full set of components\ncan be found [here](https://github.com/brodagroupsoftware/osc-dm-mesh-srv)\n\nA standalone proxy server can be started for testing purposes\nusing the following command:\n~~~~\n$PROJECT_DIR/app/start.sh\n~~~~","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fos-climate%2Fosc-dm-proxy-srv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fos-climate%2Fosc-dm-proxy-srv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fos-climate%2Fosc-dm-proxy-srv/lists"}