diff --git a/.github/workflows/bindings_lua.yml b/.github/workflows/bindings_lua.yml new file mode 100644 index 000000000000..80b7f4aac48e --- /dev/null +++ b/.github/workflows/bindings_lua.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 Lua CI + +on: + push: + branches: + - main + tags: + - '*' + pull_request: + branches: + - main + paths: + - "bindings/lua/**" + - ".github/workflows/bindings_lua.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 + steps: + - uses: actions/checkout@v3 + - name: Setup lua toolchain + run: | + sudo apt-get update + sudo apt-get install -y lua-busted + - name: Setup Rust toolchain + uses: ./.github/actions/setup + - name: Build & Test + working-directory: "bindings/lua" + run: | + cargo build + mv ../../target/debug/libopendal_lua.so opendal.so + busted test/opendal_test.lua diff --git a/bindings/lua/Cargo.toml b/bindings/lua/Cargo.toml index fcb95b701212..b7c9ee23211c 100644 --- a/bindings/lua/Cargo.toml +++ b/bindings/lua/Cargo.toml @@ -34,5 +34,5 @@ rust-version.workspace = true crate-type = ["cdylib"] [dependencies] -mlua = { version = "0.8", features = ["lua54", "vendored", "module"] } +mlua = { version = "0.8", features = ["lua52", "vendored", "module"] } opendal.workspace = true