Skip to content

Commit

Permalink
[RSDK-804] Automatically bump homebrew versions (#15)
Browse files Browse the repository at this point in the history
  • Loading branch information
Otterverse authored Jan 4, 2023
1 parent 8914328 commit 7647b79
Show file tree
Hide file tree
Showing 8 changed files with 121 additions and 52 deletions.
46 changes: 46 additions & 0 deletions .github/workflows/bump-versions.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Bump Versions

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

on:
schedule:
- cron: '0 * * * *' # hourly
workflow_dispatch:

jobs:
bump-versions:
name: Bump Package Versions
runs-on: ubuntu-latest
container:
image: homebrew/brew
options: --user root
timeout-minutes: 10
steps:
- name: Check out code
uses: actions/checkout@v3
with:
ref: ${{ github.head_ref }}

- name: Setup homebrew and git config
run: |
mkdir /home/linuxbrew/.linuxbrew/Homebrew/Library/Taps/viamrobotics
ln -s $(pwd) /home/linuxbrew/.linuxbrew/Homebrew/Library/Taps/viamrobotics/homebrew-brews
git config --global --add safe.directory '*'
git config --global url."https://github.com/".insteadOf [email protected]:
brew developer on
- name: Bump viam-server
run: ./bump-version.sh viam-server

- name: Bump carto-grpc-server
run: ./bump-version.sh carto-grpc-server

- name: Bump orb-grpc-server
run: ./bump-version.sh orb-grpc-server

- name: Commit changes
uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: Auto-update of package versions
1 change: 0 additions & 1 deletion Formula/aravis-cli.rb
Original file line number Diff line number Diff line change
Expand Up @@ -22,5 +22,4 @@ def install
system "ninja", "install"
end
end

end
56 changes: 28 additions & 28 deletions Formula/carto-grpc-server.rb
Original file line number Diff line number Diff line change
@@ -1,49 +1,49 @@
class CartoGrpcServer < Formula
desc "A Viam slam GRPC server for Cartographer"
desc "Viam slam GRPC server for Cartographer"
homepage "https://www.viam.com/"
url "https://github.com/viamrobotics/slam.git",
tag: "v0.1.14",
tag: "v0.1.14",
revision: "3d5e5c3b3e844d4a25d16d7a1d9dfffcfa0fb14b"
license "Apache-2.0"
head "https://github.com/viamrobotics/slam.git", branch: "main"

depends_on "go" => :build
depends_on "cmake" => :build
depends_on "go" => :build
depends_on "ninja" => :build
depends_on "abseil"
depends_on "boost"
depends_on "ceres-solver"
depends_on "grpc"
depends_on "protobuf"
depends_on "cairo"
depends_on "googletest"
depends_on "[email protected]"
depends_on "openssl"
depends_on "ceres-solver"
depends_on "eigen"
depends_on "gflags"
depends_on "glog"
depends_on "suite-sparse"
depends_on "sphinx-doc"
depends_on "googletest"
depends_on "grpc"
depends_on "[email protected]"
depends_on "openssl"
depends_on "pcl"
depends_on "protobuf"
depends_on "sphinx-doc"
depends_on "suite-sparse"

def install
chdir "slam-libraries" do
system "make", "buf"
system "make", "buildcarto"
bin.install "viam-cartographer/build/carto_grpc_server"
lib.install "viam-cartographer/cartographer/build/libcartographer.a"
lib.install "viam-cartographer/build/libviam-cartographer.a"
(share/"cartographer/lua_files").mkpath
share.install "viam-cartographer/lua_files/locating_in_map.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/lua_files/mapping_new_map.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/lua_files/updating_a_map.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/map_builder.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/pose_graph.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/trajectory_builder_2d.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/map_builder_server.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/trajectory_builder.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/trajectory_builder_3d.lua" => "cartographer/lua_files/"
end
system "make", "buf"
system "make", "buildcarto"

bin.install "viam-cartographer/build/carto_grpc_server"
lib.install "viam-cartographer/cartographer/build/libcartographer.a"
lib.install "viam-cartographer/build/libviam-cartographer.a"
(share/"cartographer/lua_files").mkpath
share.install "viam-cartographer/lua_files/locating_in_map.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/lua_files/mapping_new_map.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/lua_files/updating_a_map.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/map_builder.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/pose_graph.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/trajectory_builder_2d.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/map_builder_server.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/trajectory_builder.lua" => "cartographer/lua_files/"
share.install "viam-cartographer/cartographer/configuration_files/trajectory_builder_3d.lua" => "cartographer/lua_files/"
end
end
end
6 changes: 3 additions & 3 deletions Formula/intel-real-grpc-server.rb
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
class IntelRealGrpcServer < Formula
desc "A Viam camera GRPC server for the Intel RealSense"
desc "Viam camera GRPC server for the Intel RealSense"
homepage "https://www.viam.com/"
url "https://github.com/viamrobotics/camera-servers/archive/refs/tags/v0.1.1.tar.gz"
sha256 "4e872fb4ea1710c39c5919a4ed0f6e94d319853cd1ae546abf7eeebc9e87167e"
license "Apache-2.0"
head "https://github.com/viamrobotics/camera-servers.git", branch: "main"

depends_on "pkg-config" => :build
depends_on "go" => :build
depends_on "pkg-config" => :build
depends_on "grpc"
depends_on "libhttpserver"
depends_on "opencv"
depends_on "librealsense"
depends_on "opencv"

def install
system "make", "buf"
Expand Down
29 changes: 17 additions & 12 deletions Formula/orb-grpc-server.rb
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
class OrbGrpcServer < Formula
desc "A Viam slam GRPC server for ORB_SLAM3"
desc "Viam slam GRPC server for ORB_SLAM3"
homepage "https://www.viam.com/"
url "https://github.com/viamrobotics/slam.git",
tag: "v0.1.14",
tag: "v0.1.14",
revision: "3d5e5c3b3e844d4a25d16d7a1d9dfffcfa0fb14b"
license "Apache-2.0"
head "https://github.com/viamrobotics/slam.git", branch: "main"

depends_on "pkg-config" => :build
depends_on "go" => :build
depends_on "cmake" => :build
depends_on "grpc"
depends_on "go" => :build
depends_on "pkg-config" => :build
depends_on "boost"
depends_on "eigen"
depends_on "glew"
depends_on "grpc"
depends_on "opencv@4"
depends_on "eigen"
depends_on "boost"
depends_on "openssl"
depends_on "pangolin"

Expand All @@ -23,11 +23,16 @@ def install
system "make", "buf"
system "make", "buildorb"
if OS.mac?
system "install_name_tool", "-change", buildpath.to_s.delete_prefix("/private") + "/slam-libraries/viam-orb-slam3/ORB_SLAM3/Thirdparty/DBoW2/lib/libDBoW2.dylib", "#{lib}/libDBoW2.dylib", "viam-orb-slam3/ORB_SLAM3/lib/libORB_SLAM3.dylib"
system "install_name_tool", "-change", buildpath.to_s.delete_prefix("/private") + "/slam-libraries/viam-orb-slam3/ORB_SLAM3/Thirdparty/g2o/lib/libg2o.dylib", "#{lib}/libg2o.dylib", "viam-orb-slam3/ORB_SLAM3/lib/libORB_SLAM3.dylib"
system "install_name_tool", "-change", buildpath.to_s.delete_prefix("/private") + "/slam-libraries/viam-orb-slam3/ORB_SLAM3/Thirdparty/DBoW2/lib/libDBoW2.dylib", "#{lib}/libDBoW2.dylib", "viam-orb-slam3/bin/orb_grpc_server"
system "install_name_tool", "-change", buildpath.to_s.delete_prefix("/private") + "/slam-libraries/viam-orb-slam3/ORB_SLAM3/Thirdparty/g2o/lib/libg2o.dylib", "#{lib}/libg2o.dylib", "viam-orb-slam3/bin/orb_grpc_server"
system "install_name_tool", "-change", buildpath.to_s.delete_prefix("/private") + "/slam-libraries/viam-orb-slam3/ORB_SLAM3/lib/libORB_SLAM3.dylib", "#{lib}/libORB_SLAM3.dylib", "viam-orb-slam3/bin/orb_grpc_server"
system "install_name_tool", "-change",
buildpath.to_s.delete_prefix("/private") + "/slam-libraries/viam-orb-slam3/ORB_SLAM3/Thirdparty/DBoW2/lib/libDBoW2.dylib", "#{lib}/libDBoW2.dylib", "viam-orb-slam3/ORB_SLAM3/lib/libORB_SLAM3.dylib"
system "install_name_tool", "-change",
buildpath.to_s.delete_prefix("/private") + "/slam-libraries/viam-orb-slam3/ORB_SLAM3/Thirdparty/g2o/lib/libg2o.dylib", "#{lib}/libg2o.dylib", "viam-orb-slam3/ORB_SLAM3/lib/libORB_SLAM3.dylib"
system "install_name_tool", "-change",
buildpath.to_s.delete_prefix("/private") + "/slam-libraries/viam-orb-slam3/ORB_SLAM3/Thirdparty/DBoW2/lib/libDBoW2.dylib", "#{lib}/libDBoW2.dylib", "viam-orb-slam3/bin/orb_grpc_server"
system "install_name_tool", "-change",
buildpath.to_s.delete_prefix("/private") + "/slam-libraries/viam-orb-slam3/ORB_SLAM3/Thirdparty/g2o/lib/libg2o.dylib", "#{lib}/libg2o.dylib", "viam-orb-slam3/bin/orb_grpc_server"
system "install_name_tool", "-change",
buildpath.to_s.delete_prefix("/private") + "/slam-libraries/viam-orb-slam3/ORB_SLAM3/lib/libORB_SLAM3.dylib", "#{lib}/libORB_SLAM3.dylib", "viam-orb-slam3/bin/orb_grpc_server"
end
bin.install "viam-orb-slam3/bin/orb_grpc_server"
lib.install Dir["viam-orb-slam3/ORB_SLAM3/lib/*"]
Expand Down
1 change: 0 additions & 1 deletion Formula/tensorflowlite.rb
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,4 @@ def install
include.install "tensorflow/lite/c/c_api_types.h" => "tensorflow/lite/c/c_api_types.h"
include.install "tensorflow/lite/c/common.h" => "tensorflow/lite/c/common.h"
end

end
14 changes: 7 additions & 7 deletions Formula/viam-server.rb
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
class ViamServer < Formula
desc "The main server application of the viam robot development kit (RDK)"
desc "Main server application of the viam robot development kit (RDK)"
homepage "https://www.viam.com/"
url "https://github.com/viamrobotics/rdk/archive/refs/tags/v0.2.9.tar.gz"
sha256 "3d989f4dbd63736c509463ec12c4455b4640bdf1ed53469922e23ccecf76df4a"
url "https://github.com/viamrobotics/rdk/archive/refs/tags/v0.2.10.tar.gz"
sha256 "55dd954b1e69cdd84082d7fc7554e962dfdde275d0e8c7caf856518d41035948"
license "AGPL-3.0"
head "https://github.com/viamrobotics/rdk.git", branch: "main"

depends_on "go" => :build
depends_on "ffmpeg"
depends_on "nlopt"
depends_on "x264"
depends_on "opus"
depends_on "tensorflowlite"
depends_on "ffmpeg"
depends_on "tensorflowlite"
depends_on "x264"

def install
with_env(
"TAG_VERSION" => "v#{version.to_s}"
"TAG_VERSION" => "v#{version}",
) do
system "make", "server"
end
Expand Down
20 changes: 20 additions & 0 deletions bump-version.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#!/bin/bash

FORMULA=$1

if [ -z $FORMULA ]
then
echo "Formula name missing or invalid"
exit 1
fi

CHECK=$(brew bump $FORMULA)
CUR_VERSION=$(echo "$CHECK" | grep Current | awk '{print $4}')
NEW_VERSION=$(echo "$CHECK" | grep livecheck | awk '{print $4}')

if [ $CUR_VERSION = $NEW_VERSION ]
then
exit 0
fi

brew bump-formula-pr --write-only --version $NEW_VERSION $FORMULA

0 comments on commit 7647b79

Please sign in to comment.