{"id":13726135,"url":"https://github.com/inhabitedtype/ocaml-aws","last_synced_at":"2025-04-13T06:37:05.734Z","repository":{"id":3431869,"uuid":"49447957","full_name":"inhabitedtype/ocaml-aws","owner":"inhabitedtype","description":"Generated OCaml bindings for Amazon Web Services","archived":false,"fork":false,"pushed_at":"2024-07-08T02:12:48.000Z","size":8970,"stargazers_count":138,"open_issues_count":22,"forks_count":32,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-03-24T09:48:06.624Z","etag":null,"topics":["aws","ec2","ocaml"],"latest_commit_sha":null,"homepage":null,"language":"OCaml","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/inhabitedtype.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","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":"2016-01-11T19:12:21.000Z","updated_at":"2024-12-07T12:16:33.000Z","dependencies_parsed_at":"2023-01-11T16:16:50.038Z","dependency_job_id":"61b2c1c5-6d58-4b43-9961-01969dd6f787","html_url":"https://github.com/inhabitedtype/ocaml-aws","commit_stats":{"total_commits":209,"total_committers":14,"mean_commits":"14.928571428571429","dds":0.4258373205741627,"last_synced_commit":"3b3bd76d6b76bdc8879451a2ed2027137fc1c131"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inhabitedtype%2Focaml-aws","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inhabitedtype%2Focaml-aws/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inhabitedtype%2Focaml-aws/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inhabitedtype%2Focaml-aws/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/inhabitedtype","download_url":"https://codeload.github.com/inhabitedtype/ocaml-aws/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248675334,"owners_count":21143763,"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":["aws","ec2","ocaml"],"created_at":"2024-08-03T01:02:53.609Z","updated_at":"2025-04-13T06:37:05.661Z","avatar_url":"https://github.com/inhabitedtype.png","language":"OCaml","funding_links":[],"categories":["OCaml"],"sub_categories":[],"readme":"# ocaml-aws\n\nocaml-aws is an Amazon Web Services SDK for OCaml. Its source distribution\nincludes a core runtime API and a code generation tool that generates\nindividual libraries from [botocore][] service descriptions.\n\n[botocore]: https://github.com/boto/botocore\n\n[API Documentation](http://inhabitedtype.github.io/ocaml-aws/)\n\n## Development\n\nYou can install the core library and its dependencies by pinning:\n\n```bash\nopam pin add aws .\n```\n\nAfter pinning, you can install to the latest development version by checking\nout the commit and running:\n\n```bash\nopam update aws\n```\n\nRunning individual test suites for a Service\n``` bash\nAWS_ACCESS_KEY_ID=???? \\\nAWS_SECRET_ACCESS_KEY=???? \\\nAWS_DEFAULT_REGION=ap-southeast-2 \\\ndune runtest libraries/ec2/lib_test\n```\n\n### Code Generation\n\nTo generate service libaries during development and in preparation for release,\nfirst configure the build to enable code generation and run the `gen` target of\nthe Makefile. Note that the code generation tool has its own set of\ndependencies that must be installed in order for the build to succeed.\nIn addition, the Makefile is written for GNU make.\nSome platforms such as OS X and FreeBSD do not have a GNU-compatible make\ninstalled by default. If you get strage error messages at this stage of the\nbuild, check your make. The following commands will configure the build for\ncode generation and regenerate the libraries from the current definitions:\n\n```bash\n# Compile code generator\nmake gen\n\n# Compile generated libraries\nmake\n```\n\n### Release\n\nTo generate a release to opam requires `dune-release` to be installed, then run:\n\n``` bash\nmake opam-release\n\n```\n\n## Example\n\nHere's how you use the library and EC2 bindings to retrieve a list of regions\nfrom AWS and print them to `stdout`. This example uses the Async runtime, but\nthe equivalent lwt example is identical in structure.\n\n```ocaml\nopen Core\nopen Async\nopen Aws_ec2\n\nlet to_result = function\n  | `Ok x    -\u003e Ok x\n  | `Error e -\u003e Error (Aws.Error.format Errors.to_string e)\n\nlet main () =\n  Aws_async.Runtime.run_request\n    ~region:\"us-east-1\" ~access_key:\"\u003c...\u003e\" ~secret_key:\"\u003c...\u003e\"\n    (module DescribeRegions)\n    (Types.DescribeRegionsRequest.make ())\n  \u003e\u003e| to_result\n  \u003e\u003e| Option.value_exn\n  \u003e\u003e|? List.iter ~f:(fun x -\u003e Log.Global.info \"%s\" x.Types.Region.region_name)\n  \u003e\u003e\u003e function\n    | Ok ()   -\u003e exit 0\n    | Error e -\u003e Log.Global.error \"%s\" e; exit 1\n\nScheduler.go_main ~main ()\n```\n\n## DEBUGGING\n\nIf you get this error when running test or example code\n`Fatal error: exception (Failure \"No SSL or TLS support compiled into Conduit\")`\n\nYou need to install the ssl versions of your chosen async framework\n\n`opam install lwt_ssl async_ssl`\n\n## License\n\nBSD3, see LICENSE file for its text.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finhabitedtype%2Focaml-aws","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finhabitedtype%2Focaml-aws","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finhabitedtype%2Focaml-aws/lists"}