All Projects → portkey-cloud → Aws Clj Sdk

portkey-cloud / Aws Clj Sdk

Clojure bindings for AWS

Programming Languages

clojure
4091 projects

Labels

Projects that are alternatives of or similar to Aws Clj Sdk

Django S3 Like Storage
Your Own Amazon S3 Django Storage
Stars: ✭ 28 (-72.28%)
Mutual labels:  aws, amazon
Pega Helm Charts
Orchestrate a Pega Platform™ deployment by using Docker, Kubernetes, and Helm to take advantage of Pega Platform Cloud Choice flexibility.
Stars: ✭ 58 (-42.57%)
Mutual labels:  aws, amazon
Lifion Kinesis
A native Node.js producer and consumer library for Amazon Kinesis Data Streams
Stars: ✭ 54 (-46.53%)
Mutual labels:  aws, amazon
Apai Io
DISCONTINUED Amazon Product Adverstising Library based on PHP REST and SOAP (only V1) using the Product Advertising API.
Stars: ✭ 647 (+540.59%)
Mutual labels:  aws, amazon
Ddns Route53
Dynamic DNS for Amazon Route 53 on a time-based schedule
Stars: ✭ 98 (-2.97%)
Mutual labels:  aws, amazon
Cfn nag
Linting tool for CloudFormation templates
Stars: ✭ 808 (+700%)
Mutual labels:  aws, amazon
Manageiq
ManageIQ Open-Source Management Platform
Stars: ✭ 1,089 (+978.22%)
Mutual labels:  aws, amazon
Aws Google Auth
Provides AWS STS credentials based on Google Apps SAML SSO auth (what a jumble!)
Stars: ✭ 428 (+323.76%)
Mutual labels:  aws, amazon
Aws K8s Kops Ansible
Kubernetes setup on Amazon AWS using Kops and Ansible
Stars: ✭ 101 (+0%)
Mutual labels:  aws, amazon
Aws Config To Elasticsearch
Generates an AWS Config Snapshot and ingests it into ElasticSearch for further analysis using Kibana
Stars: ✭ 62 (-38.61%)
Mutual labels:  aws, amazon
Amazon Sagemaker Examples
Example 📓 Jupyter notebooks that demonstrate how to build, train, and deploy machine learning models using 🧠 Amazon SageMaker.
Stars: ✭ 6,346 (+6183.17%)
Mutual labels:  aws, amazon
S3scanner
Scan for open AWS S3 buckets and dump the contents
Stars: ✭ 1,319 (+1205.94%)
Mutual labels:  aws, amazon
Aws
A collection of bash shell scripts for automating various tasks with Amazon Web Services using the AWS CLI and jq.
Stars: ✭ 493 (+388.12%)
Mutual labels:  aws, amazon
Aws Toolkit Vscode
AWS Toolkit for Visual Studio Code, an extension for working with AWS services including AWS Lambda.
Stars: ✭ 823 (+714.85%)
Mutual labels:  aws, amazon
Ansible For Devops
Ansible for DevOps examples.
Stars: ✭ 5,265 (+5112.87%)
Mutual labels:  aws, amazon
Aws Sdk Java V2
The official AWS SDK for Java - Version 2
Stars: ✭ 1,083 (+972.28%)
Mutual labels:  aws, amazon
Aws Sdk Java
The official AWS SDK for Java.
Stars: ✭ 3,662 (+3525.74%)
Mutual labels:  aws, amazon
Shep
A framework for building JavaScript Applications with AWS API Gateway and Lambda
Stars: ✭ 376 (+272.28%)
Mutual labels:  aws, amazon
Complete Placement Preparation
This repository consists of all the material required for cracking the coding rounds and technical interviews during placements.
Stars: ✭ 1,114 (+1002.97%)
Mutual labels:  aws, amazon
Sagemaker Debugger
Amazon SageMaker Debugger provides functionality to save tensors during training of machine learning jobs and analyze those tensors
Stars: ✭ 70 (-30.69%)
Mutual labels:  aws, amazon

portkey/aws-clj-sdk

A Clojure library for AWS.

It's not a wrapper around aws-java-sdk, it's a pure Clojure, spec-based implementation generated from machine-readable API specifications provided by Amazon.

Status

aws-clj-sdk can now be used for the following services (rest-json protocol)

  • AWS Batch
  • AWS Greengrass
  • AWS IoT
  • AWS IoT Data Plane
  • AWS Lambda
  • AWS X-Ray
  • Amazon API Gateway
  • Amazon CloudDirectory
  • Amazon CloudSearch Domain
  • Amazon Cognito Sync
  • Amazon Elastic File System
  • Amazon Elastic Transcoder
  • Amazon Elasticsearch Service
  • Amazon Glacier
  • Amazon Lex Model Building Service
  • Amazon Lex Runtime Service
  • Amazon Pinpoint
  • Amazon Polly
  • Amazon WorkDocs

Support for new services can be generated by bumping com.amazonaws/aws-java-sdk-models dependency and running lein gen-aws-api.

Usage

=> (require '[portkey.aws.lambda :as lambda])
=> (lambda/list-functions)
{:functions [{:role "arn:aws:iam::238568392557:role/portkey", :description "", :code-size 5826344, :function-arn "arn:aws:lambda:eu-central-1:238568392557:function:user_Iflatter", :dead-letter-config {}, :master-arn nil, :last-modified "2017-07-13T10:08:40.196+0000", :code-sha256 "Nx3nojHfJakr8w5EVS6ZhbGq+vQ6uq0z0BRGBPpcFPg=", :runtime :java8, :memory-size 1536, :vpc-config {}, :environment {}, :tracing-config {:mode :pass-through}, :timeout 30, :version "$LATEST", :kmskey-arn nil, :handler "portkey.LambdaStub", :function-name "user_Iflatter"}], :next-marker nil}

All AWS operations are mapped to functions (the name case is changed to kebab-case).

doc returns API documentation as well as displaying specs

user=> (doc lambda/list-functions)
-------------------------
portkey.aws.lambda/list-functions
([] [list-functions-request])
  Returns a list of your Lambda functions. For each function, the response
includes the function configuration information. You must use GetFunction to
retrieve the code for your function.
 This operation requires permission for the lambda:ListFunctions action.
 If you are using the versioning feature, you can list all of your functions or
only $LATEST versions. For information about the versioning feature, see AWS
Lambda Function Versioning and Aliases
(http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
Spec
  args: (? :portkey.aws.lambda/list-functions-request)
  ret: (and :portkey.aws.lambda/list-functions-response)
nil

core.async

=> (require '[portkey.aws :as aws] '[portkey.aws.lambda :as lambda])
=> (binding [aws/*http-client* aws/async-http-client]
     (lambda/list-functions))
#object[clojure.core.async.impl.channels.ManyToManyChannel 0x7975d4aa "[email protected]"]
=> (async/<!! *1)
[:result {:functions [{:role "arn:aws:iam::238568392557:role/portkey", :description "", :code-size 5826344, :function-arn "arn:aws:lambda:eu-central-1:238568392557:function:user_Iflatter", :dead-letter-config {}, :master-arn nil, :last-modified "2017-07-13T10:08:40.196+0000", :code-sha256 "Nx3nojHfJakr8w5EVS6ZhbGq+vQ6uq0z0BRGBPpcFPg=", :runtime :java8, :memory-size 1536, :vpc-config {}, :environment {}, :tracing-config {:mode :pass-through}, :timeout 30, :version "$LATEST", :kmskey-arn nil, :handler "portkey.LambdaStub", :function-name "user_Iflatter"}], :next-marker nil}]

License

Copyright © 2017 Christophe Grand

Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].