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"