]> git.proxmox.com Git - ceph.git/blob - ceph/src/arrow/ci/scripts/install_minio.sh
import quincy 17.2.0
[ceph.git] / ceph / src / arrow / ci / scripts / install_minio.sh
1 #!/usr/bin/env bash
2 #
3 # Licensed to the Apache Software Foundation (ASF) under one
4 # or more contributor license agreements. See the NOTICE file
5 # distributed with this work for additional information
6 # regarding copyright ownership. The ASF licenses this file
7 # to you under the Apache License, Version 2.0 (the
8 # "License"); you may not use this file except in compliance
9 # with the License. You may obtain a copy of the License at
10 #
11 # http://www.apache.org/licenses/LICENSE-2.0
12 #
13 # Unless required by applicable law or agreed to in writing,
14 # software distributed under the License is distributed on an
15 # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 # KIND, either express or implied. See the License for the
17 # specific language governing permissions and limitations
18 # under the License.
19
20 set -e
21
22 declare -A archs
23 archs=([amd64]=amd64
24 [arm64v8]=arm64
25 [arm32v7]=arm
26 [s390x]=s390x)
27
28 declare -A platforms
29 platforms=([linux]=linux
30 [macos]=darwin)
31
32 arch=${archs[$1]}
33 platform=${platforms[$2]}
34 version=$3
35 prefix=$4
36
37 if [ "$#" -ne 4 ]; then
38 echo "Usage: $0 <architecture> <platform> <version> <prefix>"
39 exit 1
40 elif [[ -z ${arch} ]]; then
41 echo "Unexpected architecture: ${1}"
42 exit 1
43 elif [[ -z ${platform} ]]; then
44 echo "Unexpected platform: ${2}"
45 exit 1
46 elif [[ ${version} != "latest" ]]; then
47 echo "Cannot fetch specific versions of minio, only latest is supported."
48 exit 1
49 fi
50
51 if [[ ! -x ${prefix}/bin/minio ]]; then
52 url="https://dl.min.io/server/minio/release/${platform}-${arch}/minio"
53 echo "Fetching ${url}..."
54 wget -nv -P ${prefix}/bin ${url}
55 chmod +x ${prefix}/bin/minio
56 fi
57 if [[ ! -x ${prefix}/bin/mc ]]; then
58 url="https://dl.min.io/client/mc/release/${platform}-${arch}/mc"
59 echo "Fetching ${url}..."
60 wget -nv -P ${prefix}/bin ${url}
61 chmod +x ${prefix}/bin/mc
62 fi