You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opendal.apache.org by xu...@apache.org on 2023/03/24 00:32:51 UTC
[incubator-opendal] branch main updated: ci: add a basic ci for ruby (#1744)
This is an automated email from the ASF dual-hosted git repository.
xuanwo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-opendal.git
The following commit(s) were added to refs/heads/main by this push:
new b91cc4ef ci: add a basic ci for ruby (#1744)
b91cc4ef is described below
commit b91cc4efcc3b5e069f9f83cbc92671a3befa3ca8
Author: Chojan Shang <ps...@apache.org>
AuthorDate: Fri Mar 24 08:32:44 2023 +0800
ci: add a basic ci for ruby (#1744)
* chore(ci): add a basic ci for ruby
Signed-off-by: Chojan Shang <ps...@outlook.com>
* chore(bindings/ruby): add important gem
Signed-off-by: Chojan Shang <ps...@outlook.com>
* chore(ci): setup bundle gemfile
Signed-off-by: Chojan Shang <ps...@outlook.com>
* chore: make standard happy
Signed-off-by: Chojan Shang <ps...@outlook.com>
---------
Signed-off-by: Chojan Shang <ps...@outlook.com>
---
.github/workflows/bindings_ruby.yml | 57 +++++++++++++++++++++++++++++++++++++
bindings/ruby/Gemfile | 3 ++
2 files changed, 60 insertions(+)
diff --git a/.github/workflows/bindings_ruby.yml b/.github/workflows/bindings_ruby.yml
new file mode 100644
index 00000000..961ff230
--- /dev/null
+++ b/.github/workflows/bindings_ruby.yml
@@ -0,0 +1,57 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+name: Bindings Ruby CI
+
+on:
+ push:
+ branches:
+ - main
+ tags:
+ - '*'
+ pull_request:
+ branches:
+ - main
+ paths:
+ - "bindings/ruby/**"
+ - ".github/workflows/bindings_ruby.yml"
+ workflow_dispatch:
+
+concurrency:
+ group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
+ cancel-in-progress: true
+
+permissions:
+ contents: read
+
+jobs:
+ test:
+ runs-on: ubuntu-latest
+ env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps
+ BUNDLE_GEMFILE: ${{ github.workspace }}/bindings/ruby/Gemfile
+ steps:
+ - uses: actions/checkout@v3
+ - uses: ruby/setup-ruby@v1
+ with:
+ ruby-version: '3.1'
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
+ - name: Setup Rust toolchain
+ uses: ./.github/actions/setup
+ - name: Bundle with rake
+ working-directory: "bindings/ruby"
+ run: |
+ bundle exec rake
diff --git a/bindings/ruby/Gemfile b/bindings/ruby/Gemfile
index 60d03032..d103be58 100644
--- a/bindings/ruby/Gemfile
+++ b/bindings/ruby/Gemfile
@@ -24,6 +24,9 @@ gemspec
gem "rake", "~> 13.0"
+gem "rb_sys", "~> 0.9.39"
+gem "rake-compiler", "~> 1.2.0"
+
gem "cucumber", "~> 8.0"
gem "standard", "~> 1.3"