本記事では、obshell-sdk-goを使用して必要なRPMパッケージをダウンロードする方法について説明します。
説明
まずは、obshell-sdk-goクイックスタートを参照して、obshell-sdk-goの使用方法を確認することをお勧めします。
サンプルコード
このマシンと同じアーキテクチャのRPMパッケージをダウンロードする
指定されたアーキテクチャまたはシステムのRPMをダウンロードする
最新バージョンのRPMパッケージをダウンロードする
package main import ( "fmt" "github.com/oceanbase/obshell-sdk-go/util" ) // 実行マシンと同じアーキテクチャの最新のobshellパッケージをダウンロードして実行する func DownloadSameArch() { entry := util.PackageEntry{ Name: "obshell", } dest, err := util.DownloadPackage("/root/download", entry) if err != nil { panic(err) } fmt.Println(dest) }指定されたバージョンのRPMパッケージをダウンロードする
package main import ( "fmt" "github.com/oceanbase/obshell-sdk-go/util" ) // 実行マシンと同じアーキテクチャの指定されたバージョンのOceanBaseデータベースパッケージをダウンロードする func DownloadSameArchVersion() { entry := util.PackageEntry{ Name: "oceanbase-ce", Version: "4.3.5.0", } dest, err := util.DownloadPackage("/root/download", entry) if err != nil { panic(err) } fmt.Println(dest) }
最新バージョンのRPMパッケージをダウンロードする
package main import ( "fmt" "github.com/oceanbase/obshell-sdk-go/util" ) func DownloadDiffArch() { // 指定されたアーキテクチャの最新のobshellパッケージをダウンロード entry := util.PackageEntry{ Name: "obshell", } // 指定されたアーキテクチャとシステムはそれぞれaarch64、el8です mirror := util.OB_COMMUNITY_STABLE_BASE.GetMirror(util.AARCH64, util.EL8) dest, err := mirror.Download("/root/download", entry) if err != nil { panic(err) } fmt.Println(dest) }指定されたバージョンのRPMパッケージをダウンロードする
package main import ( "fmt" "github.com/oceanbase/obshell-sdk-go/util" ) // 指定されたアーキテクチャの指定されたバージョンのobshellパッケージをダウンロード func DownloadDiffArchVersion() { entry := util.PackageEntry{ Name: "obshell", Version: "4.2.4.0", } // 指定されたアーキテクチャとシステムはそれぞれaarch64、el8です mirror := util.OB_COMMUNITY_STABLE_BASE.GetMirror(util.AARCH64, util.EL8) dest, err := mirror.Download("/root/download", entry) if err != nil { panic(err) } fmt.Println(dest) }
関連ドキュメント
obshell-sdk-pythonを使用したAPIメソッドのリクエスト方法については、RPMパッケージのダウンロードを参照してください。