From c07096790117cba653cffae6a8b7a820040b2f87 Mon Sep 17 00:00:00 2001 From: Eldad Fux Date: Fri, 11 Dec 2020 21:40:51 +0200 Subject: [PATCH] Added ruby tests --- app/config/environments.php | 2 +- docker/environments/build.sh | 2 +- docker/environments/ruby-2.7/Dockerfile | 2 +- tests/resources/functions/package-ruby.sh | 12 ++++++++++ tests/resources/functions/ruby-fx.tar.gz | Bin 195 -> 0 bytes tests/resources/functions/ruby.tar.gz | Bin 0 -> 18580 bytes tests/resources/functions/ruby/Gemfile | 5 +++++ tests/resources/functions/ruby/Gemfile.lock | 16 ++++++++++++++ tests/resources/functions/ruby/app.rb | 23 ++++++++++++++++++++ 9 files changed, 59 insertions(+), 3 deletions(-) create mode 100644 tests/resources/functions/package-ruby.sh delete mode 100644 tests/resources/functions/ruby-fx.tar.gz create mode 100644 tests/resources/functions/ruby.tar.gz create mode 100644 tests/resources/functions/ruby/Gemfile create mode 100644 tests/resources/functions/ruby/Gemfile.lock create mode 100644 tests/resources/functions/ruby/app.rb diff --git a/app/config/environments.php b/app/config/environments.php index a91aa6153..11773eed4 100644 --- a/app/config/environments.php +++ b/app/config/environments.php @@ -26,7 +26,7 @@ return [ 'name' => 'Ruby', 'version' => '2.7', 'base' => 'ruby:2.7-alpine', - 'image' => 'appwrite/env-ruby-2.7:1.0.0', + 'image' => 'appwrite/env-ruby-2.7:1.0.2', 'logo' => 'ruby.png', ], 'python-3.8' => [ diff --git a/docker/environments/build.sh b/docker/environments/build.sh index fe1d22d1e..0dc07947a 100644 --- a/docker/environments/build.sh +++ b/docker/environments/build.sh @@ -19,4 +19,4 @@ echo 'Python 3.8...' docker buildx build --platform linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64,linux/386,linux/ppc64le -t appwrite/env-python-3.8:1.0.0 ./docker/environments/python-3.8/ --push echo 'Ruby 2.7...' -docker buildx build --platform linux/amd64,linux/arm64,linux/386,linux/ppc64le -t appwrite/env-ruby-2.7:1.0.0 ./docker/environments/ruby-2.7/ --push +docker buildx build --platform linux/amd64,linux/arm64,linux/386,linux/ppc64le -t appwrite/env-ruby-2.7:1.0.2 ./docker/environments/ruby-2.7/ --push diff --git a/docker/environments/ruby-2.7/Dockerfile b/docker/environments/ruby-2.7/Dockerfile index 5b9323376..36cbb5674 100644 --- a/docker/environments/ruby-2.7/Dockerfile +++ b/docker/environments/ruby-2.7/Dockerfile @@ -8,5 +8,5 @@ RUN mkdir /usr/local/src WORKDIR /usr/local/src/ -ENV GEM_PATH=/usr/local/src/.appwrite/2.1.0 +ENV GEM_PATH=/usr/local/src/.appwrite ENV GEM_SPEC_CACHE=/usr/local/src/.appwrite/specs \ No newline at end of file diff --git a/tests/resources/functions/package-ruby.sh b/tests/resources/functions/package-ruby.sh new file mode 100644 index 000000000..a1c3676ac --- /dev/null +++ b/tests/resources/functions/package-ruby.sh @@ -0,0 +1,12 @@ + +echo 'Ruby Packaging...' + +cp -r $(pwd)/tests/resources/functions/ruby $(pwd)/tests/resources/functions/packages/ruby + +docker run --rm -v $(pwd)/tests/resources/functions/packages/ruby:/app -w /app --env GEM_HOME=./.appwrite appwrite/env-ruby-2.7:1.0.2 bundle install + +docker run --rm -v $(pwd)/tests/resources/functions/packages/ruby:/app -w /app appwrite/env-ruby-2.7:1.0.2 tar -zcvf code.tar.gz . + +mv $(pwd)/tests/resources/functions/packages/ruby/code.tar.gz $(pwd)/tests/resources/functions/ruby.tar.gz + +rm -r $(pwd)/tests/resources/functions/packages/ruby diff --git a/tests/resources/functions/ruby-fx.tar.gz b/tests/resources/functions/ruby-fx.tar.gz deleted file mode 100644 index 2d41e7997ee7f992d55b254acc4cad71e2730ee8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 195 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 VvXrGPWod8H{{dh;F+2b;0s!^|jBEe^ literal 0 HcmV?d00001 diff --git a/tests/resources/functions/ruby/Gemfile b/tests/resources/functions/ruby/Gemfile new file mode 100644 index 000000000..02c1a52ac --- /dev/null +++ b/tests/resources/functions/ruby/Gemfile @@ -0,0 +1,5 @@ +source "https://rubygems.org" + +ruby "~> 2.7.0" + +gem 'appwrite', '~> 1.0', '>= 1.0.11' \ No newline at end of file diff --git a/tests/resources/functions/ruby/Gemfile.lock b/tests/resources/functions/ruby/Gemfile.lock new file mode 100644 index 000000000..08d06664d --- /dev/null +++ b/tests/resources/functions/ruby/Gemfile.lock @@ -0,0 +1,16 @@ +GEM + remote: https://rubygems.org/ + specs: + appwrite (1.0.11) + +PLATFORMS + ruby + +DEPENDENCIES + appwrite (~> 1.0, >= 1.0.11) + +RUBY VERSION + ruby 2.7.2p137 + +BUNDLED WITH + 2.1.4 diff --git a/tests/resources/functions/ruby/app.rb b/tests/resources/functions/ruby/app.rb new file mode 100644 index 000000000..f9c4b08e2 --- /dev/null +++ b/tests/resources/functions/ruby/app.rb @@ -0,0 +1,23 @@ +require 'appwrite' + +client = Appwrite::Client.new() + +client + .set_endpoint(ENV["APPWRITE_ENDPOINT"]) # Your API Endpoint + .set_project(ENV["APPWRITE_PROJECT"]) # Your project ID + .set_key(ENV["APPWRITE_SECRET"]) # Your secret API key +; + +storage = Appwrite::Storage.new(client); + +# result = storage.get_file(ENV["APPWRITE_FILEID"]); + +puts ENV["APPWRITE_FUNCTION_ID"] +puts ENV["APPWRITE_FUNCTION_NAME"] +puts ENV["APPWRITE_FUNCTION_TAG"] +puts ENV["APPWRITE_FUNCTION_TRIGGER"] +puts ENV["APPWRITE_FUNCTION_ENV_NAME"] +puts ENV["APPWRITE_FUNCTION_ENV_VERSION"] +# puts result["$id"] +puts ENV["APPWRITE_FUNCTION_EVENT"] +puts ENV["APPWRITE_FUNCTION_EVENT_PAYLOAD"] \ No newline at end of file