aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Library/Formula/dynamodb-local.rb67
1 files changed, 67 insertions, 0 deletions
diff --git a/Library/Formula/dynamodb-local.rb b/Library/Formula/dynamodb-local.rb
new file mode 100644
index 000000000..de01e6e5d
--- /dev/null
+++ b/Library/Formula/dynamodb-local.rb
@@ -0,0 +1,67 @@
+require 'formula'
+
+class DynamodbLocal < Formula
+ homepage 'https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Tools.html'
+ url 'https://s3-us-west-2.amazonaws.com/dynamodb-local/dynamodb_local_2013-09-12.tar.gz'
+ version '2013-09-12'
+ sha1 'b8e492b8908710c6ea8fb4b74624ecc7b168ea73'
+
+ def data_path
+ var/'data/dynamodb-local'
+ end
+
+ def log_path
+ var/'log/dynamodb-local.log'
+ end
+
+ def bin_wrapper; <<-EOS.undent
+ #!/bin/sh
+ cd #{data_path} && java -Djava.library.path=#{libexec} -jar #{libexec}/DynamodbLocal.jar
+ EOS
+ end
+
+ def install
+ prefix.install %w[LICENSE.txt README.txt third_party_licenses]
+ libexec.install %w[DynamodbLocal.jar libsqlite4java-osx.jnilib]
+ (bin/'dynamodb-local').write(bin_wrapper)
+ end
+
+ def post_install
+ data_path.mkpath
+ end
+
+ def caveats; <<-EOS.undent
+ You must use version 7.x of the Java Runtime Engine (JRE).
+ DynamoDB Local does not work on older Java versions.
+
+ DynamoDB Local only supports V2 of the service API.
+
+ Data: #{data_path}
+ Logs: #{log_path}
+ EOS
+ end
+
+ plist_options :manual => "#{HOMEBREW_PREFIX}/bin/dynamodb-local"
+
+ def plist; <<-EOS.undent
+ <?xml version="1.0" encoding="UTF-8"?>
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+ <plist version="1.0">
+ <dict>
+ <key>Label</key>
+ <string>#{plist_name}</string>
+ <key>RunAtLoad</key>
+ <true/>
+ <key>KeepAlive</key>
+ <false/>
+ <key>ProgramArguments</key>
+ <array>
+ <string>#{bin}/dynamodb-local</string>
+ </array>
+ <key>StandardErrorPath</key>
+ <string>#{log_path}</string>
+ </dict>
+ </plist>
+ EOS
+ end
+end