feat(apisix): add Cloudron package
- Implements Apache APISIX packaging for Cloudron platform. - Includes Dockerfile, CloudronManifest.json, and start.sh. - Configured to use Cloudron's etcd addon. 🤖 Generated with Gemini CLI Co-Authored-By: Gemini <noreply@google.com>
This commit is contained in:
62
CloudronPackages/APISIX/apisix-source/ci/linux-install-openresty.sh
Executable file
62
CloudronPackages/APISIX/apisix-source/ci/linux-install-openresty.sh
Executable file
@@ -0,0 +1,62 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
set -euo pipefail
|
||||
|
||||
source ./ci/common.sh
|
||||
|
||||
export_version_info
|
||||
|
||||
ARCH=${ARCH:-`(uname -m | tr '[:upper:]' '[:lower:]')`}
|
||||
arch_path=""
|
||||
if [[ $ARCH == "arm64" ]] || [[ $ARCH == "aarch64" ]]; then
|
||||
arch_path="arm64/"
|
||||
fi
|
||||
|
||||
wget -qO - https://openresty.org/package/pubkey.gpg | sudo apt-key add -
|
||||
wget -qO - http://repos.apiseven.com/pubkey.gpg | sudo apt-key add -
|
||||
sudo apt-get -y update --fix-missing
|
||||
sudo apt-get -y install software-properties-common
|
||||
sudo add-apt-repository -y "deb https://openresty.org/package/${arch_path}ubuntu $(lsb_release -sc) main"
|
||||
sudo add-apt-repository -y "deb http://repos.apiseven.com/packages/${arch_path}debian bullseye main"
|
||||
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y openresty-pcre-dev openresty-zlib-dev build-essential gcc g++ cpanminus
|
||||
|
||||
SSL_LIB_VERSION=${SSL_LIB_VERSION-openssl}
|
||||
ENABLE_FIPS=${ENABLE_FIPS:-"false"}
|
||||
|
||||
if [ "$OPENRESTY_VERSION" == "source" ]; then
|
||||
if [ "$SSL_LIB_VERSION" == "tongsuo" ]; then
|
||||
export openssl_prefix=/usr/local/tongsuo
|
||||
export zlib_prefix=$OPENRESTY_PREFIX/zlib
|
||||
export pcre_prefix=$OPENRESTY_PREFIX/pcre
|
||||
|
||||
export cc_opt="-DNGX_LUA_ABORT_AT_PANIC -I${zlib_prefix}/include -I${pcre_prefix}/include -I${openssl_prefix}/include"
|
||||
export ld_opt="-L${zlib_prefix}/lib -L${pcre_prefix}/lib -L${openssl_prefix}/lib64 -Wl,-rpath,${zlib_prefix}/lib:${pcre_prefix}/lib:${openssl_prefix}/lib64"
|
||||
fi
|
||||
fi
|
||||
|
||||
install_apisix_runtime
|
||||
|
||||
if [ ! "$ENABLE_FIPS" == "true" ]; then
|
||||
curl -o /usr/local/openresty/openssl3/ssl/openssl.cnf \
|
||||
https://raw.githubusercontent.com/api7/apisix-build-tools/apisix-runtime/${APISIX_RUNTIME}/conf/openssl3/openssl.cnf
|
||||
fi
|
||||
|
||||
# patch lua-resty-events
|
||||
sed -i 's/log(ERR, "event worker failed: ", perr)/log(ngx.WARN, "event worker failed: ", perr)/' /usr/local/openresty/lualib/resty/events/worker.lua
|
Reference in New Issue
Block a user