{"id":40523059,"url":"https://github.com/dockstore/dockstore-support","last_synced_at":"2026-01-27T20:29:34.300Z","repository":{"id":39960819,"uuid":"75202201","full_name":"dockstore/dockstore-support","owner":"dockstore","description":" A collection of different projects supporting the dockstore initiative","archived":false,"fork":false,"pushed_at":"2026-01-08T21:37:03.000Z","size":1004,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":18,"default_branch":"develop","last_synced_at":"2026-01-09T03:56:55.812Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://dockstore.org","language":"Java","has_issues":false,"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/dockstore.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"citation.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2016-11-30T15:52:31.000Z","updated_at":"2026-01-08T17:39:03.000Z","dependencies_parsed_at":"2024-04-23T21:29:06.633Z","dependency_job_id":"81d54ada-6a86-474e-af59-6bb22dbc005e","html_url":"https://github.com/dockstore/dockstore-support","commit_stats":null,"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/dockstore/dockstore-support","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dockstore%2Fdockstore-support","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dockstore%2Fdockstore-support/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dockstore%2Fdockstore-support/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dockstore%2Fdockstore-support/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dockstore","download_url":"https://codeload.github.com/dockstore/dockstore-support/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dockstore%2Fdockstore-support/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28613887,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-20T18:56:40.769Z","status":"ssl_error","status_checked_at":"2026-01-20T18:54:26.653Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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":[],"created_at":"2026-01-20T21:12:45.341Z","updated_at":"2026-01-20T21:12:45.839Z","avatar_url":"https://github.com/dockstore.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![codecov](https://codecov.io/gh/dockstore/dockstore-support/branch/develop/graph/badge.svg)](https://codecov.io/gh/dockstore/dockstore-support)\n[![Build Status](https://travis-ci.org/dockstore/dockstore-support.svg?branch=develop)](https://travis-ci.org/dockstore/dockstore-support)\n\n# dockstore-support\n\nThis repo is a sandbox for support code for running, testing workflows on Dockstore, and indexing GA4GH tool registries.\nSend issues to the main dockstore repo.\n\n## Prerequisites\n\nYour environment needs to have the following items:\n\n* [Maven](https://maven.apache.org/)\n* [Docker](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04)\n\nBefore you can run the script, you must generate the jar files.\n```\ncd toolbackup \u0026\u0026 mvn clean install\n```\nAfter you have installed Maven and Docker, you may wish to run the tests; in which case, you need S3Proxy.\n```\ndocker pull andrewgaul/s3proxy\ndocker run -d --publish 8080:80 --env S3PROXY_AUTHORIZATION=none andrewgaul/s3proxy\n```\n## Communicating with OpenStack\n\n### Endpoint Configuration\n\nTo use the script, you must provide an endpoint in ~/.toolbackup/config.ini\n```\ntoken = XXX\nserver-url = https://dockstore.org:443/api\nendpoint = XXX\n```\nBy default the token is empty. The default value for the server-url is shown above. These two values are for retrieving dockstore tools.Only the endpoint is mandatory.  You can set up your config like so:\n```\nendpoint = XXX\n```\n\n### AWS Credentials\n\nIf you do not have ~/.aws/credentials, during testing, the script will generate this file with only the default profile. The default profile is necessary for this script's tests. \u003cb\u003eIf you have the credentials file but it is missing the default profile, you must add it in.\u003c/b\u003e\n```\n[default]\naws_access_key_id=MOCK_ACCESS_KEY\naws_secret_access_key=MOCK_SECRET_KEY\n```\nYou must supply the file with a dockstore profile and the proper keys.\n```\n[default]\naws_access_key_id=MOCK_ACCESS_KEY\naws_secret_access_key=MOCK_SECRET_KEY\n\n[dockstore]\naws_access_key_id=MOCK_ACCESS_KEY\naws_secret_access_key=MOCK_SECRET_KEY\n```\n\n## Client\n\nThis is the script to backup all Dockstore workflows locally.\n```\njava -jar target/client.jar --bucket-name clientbucket --key-prefix client --local-dir /home/ubuntu/clientEx --test-mode-activate true\n```\nWe are running with test mode activated which means we will not download all dockstore workflows. The dockstore images targeted will be stored on locally in the directory \u003cb\u003eclientbucket\u003c/b\u003e and in the key-prefix \u003cb\u003eclient\u003c/b\u003e within the directory. The bucket and key-prefix need not have been created. The directory, \u003cb\u003e/home/ubuntu/clientEx\u003c/b\u003e will act as temporary storage and it need not to have already been created.\n\n### How it Works\n\nClient will pull all the GA4GH tools from the server-url and save them locally. This can be used to run prototypes of utilities on all Dockstore content\n\n## Downloader\n\nThis is the script to download images from OpenStack to the user's local file system.\n```\njava -jar target/downloader.jar --bucket-name clientbucket --key-prefix client --destination-dir /home/ubuntu/downloaderEx\n```\nWe are downloading everything in the key-prefix \u003cb\u003eclient\u003c/b\u003e within the bucket \u003cb\u003eclientbucket\u003c/b\u003e into a directory that need not have already been created, \u003cb\u003e/home/ubuntu/downloaderEx\u003c/b\u003e.\n\n## Tests\n\nThe tests do not require a configuration file, but if you wish to set up the values yourself, you can add to the aforementioned ~/.toolbackup/config.ini\nThe default values are shown here.\n```\nbucket = testbucket\nprefix = testprefix\nimg = docker/whalesay\nbaseDir = /home/ubuntu/dockstore-saver\ndir = /home/ubuntu/dockstore-saver/dir\ncheckSizeDir = /home/ubuntu/dockstore-saver/checkSize\n\n[nonexistent]\nbucket = dockstore-saver-gibberish\ndir = dockstore-saver-gibberish\nimg = dockstore-saver-gibberish\n```\n- bucket: Amazon bucket you wish to use for testing the client and downloader\n- prefix: Consider it a \"subdirectory\" of the bucket\n- img: A valid image that can be pulled by any environment which has Docker\n- baseDir: A local directory which \u003cb\u003ewill not be deleted\u003c/b\u003e\n- dir: A local directory which \u003cb\u003ewill be deleted\u003c/b\u003e, if not specified it will be ~/...baseDir.../dir\n- checkSizeDir: A local directory to test that the calculation of files' sizes is correct\n- nonexistent.bucket: A non-existent bucket\n- nonexistent.dir: A non-existent local directory\n- nonexistent.img: A non-existent Docker image\n\nThe tests will clean up everything but the baseDir. \u003cb\u003eIt would be best if you specify directories which do not currently exist, even for the baseDir.\u003c/b\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdockstore%2Fdockstore-support","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdockstore%2Fdockstore-support","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdockstore%2Fdockstore-support/lists"}