{"id":21045061,"url":"https://github.com/quansight/conda-airgap","last_synced_at":"2025-03-13T22:12:04.387Z","repository":{"id":98604642,"uuid":"186623322","full_name":"Quansight/conda-airgap","owner":"Quansight","description":"Repo to test creating conda environments on air gapped systems","archived":false,"fork":false,"pushed_at":"2019-07-03T19:56:23.000Z","size":35614,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-10T15:17:08.907Z","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":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Quansight.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":"2019-05-14T13:02:05.000Z","updated_at":"2019-07-03T19:56:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"43f48ac4-bcdb-4a4b-874a-72dd5f6bbcd1","html_url":"https://github.com/Quansight/conda-airgap","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Quansight%2Fconda-airgap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Quansight%2Fconda-airgap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Quansight%2Fconda-airgap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Quansight%2Fconda-airgap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Quansight","download_url":"https://codeload.github.com/Quansight/conda-airgap/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243489835,"owners_count":20299001,"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-19T14:19:47.582Z","updated_at":"2025-03-13T22:12:04.371Z","avatar_url":"https://github.com/Quansight.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# conda-airgap\n\n[![Build Status](https://dev.azure.com/quansight/conda-airgap/_apis/build/status/Quansight.conda-airgap?branchName=master)](https://dev.azure.com/quansight/conda-airgap/_build/latest?definitionId=2\u0026branchName=master)\n\nConda-airgap provides tools for creating mirrors of conda channels locally.\nThese are suitable to be transported to airgap systems.\n\n## Usage\n\nThe main entrypoint for these tools is the `create-mirror.sh` script.\n\nIn its simplest usage, you pass the name of the channel you would like to\nclone and it will pull down all linux-64 and noarch artifacts on the channel.\nThe following will create a mirror for the main channel (which is big):\n\n```bash\n$ ./conda-mirror.sh main\n```\n\nIf you want to test this on a very small channel, feel free to use\n`quansight-small-test`:\n\n```bash\n$ ./conda-mirror.sh quansight-small-test\n```\n\n`conda-mirror.sh` will create a directory structure of\n`./mirrors/\u003cchannel-name\u003e/\u003cplatform\u003e/\u003cartifacts\u003e`, where:\n\n* `channel-name` is the name of the channel you passed (e.g. `main` or `conda-forge`)\n* `platform` is the target  architechture (e.g. `linux-64` or `noarch`)\n* `artifacts` are the artifact tarball files (`.tar.bz2`) as well as `repodata.json`\n\n### Using  the channel\n\nTo use this channel locally via your filesystem, you can modify your `condarc` file\nto point to the correct directory.\n\n```yaml\nchannels:\n  - /path/to/mirrors/main\n```\n\nYou can also host these file via a simple webserver in the mirrors directory:\n\n```bash\n$ cd mirrors\n$ python -m http.server\nServing HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...\n```\n\nand then modify your `condarc` file to have the following:\n\n```yaml\nchannels:\n  - http://0.0.0.0:8000/main\n```\n\n### Updating the mirror\n\nIn certain situations, you may already have most of the channel downloaded and\navailable. However, the channel has been updated upstream and you do not\nwant to have to re-clone the entire channel. In order to avoid this overhead\nand only grab the new packages, pass the `--clean-repodata` flag in after the\nchannel name. For example,\n\n```bash\n$ ./conda-mirror.sh main --clean-repodata\n```\n\nThis downloads the latest copy of `repodata.json` for the channel. Mirroring\nwill see that most of the artifacts are already present, and skip those.\n\n## Testing\n\nconda-airgap is well tested, and most of the files in this repository\nare there in support of the test suite. To execute the tests, run `pytest -sv`\nin the root directory.\n\n## Other Notes\n\nThe `create-mirror.sh` file uses a slightly modified version of the `conda-mirror`\nproject to support airgap scenarios.  Development releases are available on the\n`quansight` channel on anaconda.org.  The `create-mirror.sh` script installs this\nversion of conda-mirror for you, so normally you do not need to worry about this.\nThe tracking branch for these changes is available\n[here](https://github.com/Quansight/conda-mirror/tree/0.8.1.dev).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fquansight%2Fconda-airgap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fquansight%2Fconda-airgap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fquansight%2Fconda-airgap/lists"}