From 45902b61dc175300eff1ae0ab1faf6eea339bc4d Mon Sep 17 00:00:00 2001 From: Alban Linard Date: Tue, 5 Apr 2016 15:01:40 +0200 Subject: [PATCH 1/6] Prepare removal of libev. --- bin/install | 61 +++++++++++------------------------------------------ 1 file changed, 12 insertions(+), 49 deletions(-) diff --git a/bin/install b/bin/install index 5408eaf..0ad8a35 100755 --- a/bin/install +++ b/bin/install @@ -14,10 +14,6 @@ do cosy_temp="${i#*=}" cosy_temp="${cosy_temp%/}" ;; - -l=*|--lua=*) - lua_version="${i#*=}" - lua_version="${lua_version%/}" - ;; -m|--minimal) minimal=true ;; @@ -26,7 +22,7 @@ do ;; *) echo "Usage: " - echo " install [--prefix=PREFIX] [--temp=TEMP_DIR] [--lua=LUA_VERSION] [--minimal] [--in-ci]" + echo " install [--prefix=PREFIX] [--temp=TEMP_DIR] [--minimal] [--in-ci]" exit 1; ;; esac @@ -39,7 +35,6 @@ currentwd=$(dirname "${currentwd}") cosy_temp=${cosy_temp:-$(mktemp -d 2>/dev/null || mktemp -d -t cosy)} cosy_log="${cosy_temp}/install.log" cosy_prefix=${cosy_prefix:-${cosy_temp}} -lua_version=${lua_version:-5.2} parallel=$(nproc 2> /dev/null || sysctl -n hw.ncpu 2> /dev/null) { # Detect if apt-get or brew is available: @@ -161,26 +156,11 @@ cosy_temp=$(realpath "${cosy_temp}") export LD_LIBRARY_PATH="${cosy_prefix}/lib:${LD_LIBRARY_PATH}" } -# Install libev: -{ - export CC=clang - echo -n "Installing libev... " - ( - cd "${currentwd}/dependencies/libev" - ./configure --prefix="${cosy_prefix}" - make - ${sudo} make install - make clean - ) >> "${cosy_log}" 2>&1 \ - && echo -e "${green}success${nc}" \ - || echo -e "${red}failure${nc}" -} - # Install lua, luarocks and packages: { export CC=clang - echo -n "Installing lua ${lua_version} and luarocks... " - if pip list | grep "hererocks" >> "${cosy_temp}" 2>&1; then + echo -n "Installing luajit and luarocks... " + if pip list | grep "hererocks" >> "${cosy_log}" 2>&1; then hererocks="hererocks" else ${sudo} pip install --root="${cosy_prefix}" hererocks @@ -189,13 +169,14 @@ cosy_temp=$(realpath "${cosy_temp}") PYTHONPATH=$(dirname "${path}"):"${PYTHONPATH}" hererocks="${cosy_prefix}/usr/local/bin/hererocks" fi >> "${cosy_log}" 2>&1 - ${sudo} "${hererocks}" "${cosy_prefix}" -r^ --lua="${lua_version}" \ + ${sudo} "${hererocks}" "${cosy_prefix}" -r^ --luajit=2.1 \ >> "${cosy_log}" 2>&1 \ && echo -e "${green}success${nc}" \ || echo -e "${red}failure${nc}" dependencies=( argparse busted + lapis luacheck luacov luacov-coveralls @@ -203,40 +184,19 @@ cosy_temp=$(realpath "${cosy_temp}") luasec lustache serpent - ) - for dependency in ${dependencies[*]}; do - if "${cosy_prefix}/bin/luarocks" list --porcelain \ - >> "${cosy_log}" 2>&1 \ - | grep --silent "${dependency}"; then - echo " Not installing ${dependency} as it is already installed." - else - echo -n " Installing ${dependency} as it is not installed... " - # shellcheck disable=SC2086 - ${sudo} "${cosy_prefix}/bin/luarocks" install "${dependency}" \ - >> "${cosy_log}" 2>&1 \ - && echo -e "${green}success${nc}" \ - || echo -e "${red}failure${nc}" - fi - done - echo -n "Installing lua 5.1 and luarocks for nginx... " - ${sudo} "${hererocks}" "${cosy_temp}/lua_install" -r^ --lua="5.1" \ - >> "${cosy_log}" 2>&1 \ - && echo -e "${green}success${nc}" \ - || echo -e "${red}failure${nc}" - nginx_dependencies=( lua-cjson lua-resty-http md5 ) - for dependency in ${nginx_dependencies[*]}; do - if "${cosy_temp}/lua_install/bin/luarocks" list --tree="${cosy_prefix}" --porcelain \ + for dependency in ${dependencies[*]}; do + if "${cosy_prefix}/bin/luarocks" list --porcelain \ >> "${cosy_log}" 2>&1 \ | grep --silent "${dependency}"; then echo " Not installing ${dependency} as it is already installed." else echo -n " Installing ${dependency} as it is not installed... " # shellcheck disable=SC2086 - ${sudo} "${cosy_temp}/lua_install/bin/luarocks" install --tree="${cosy_prefix}" "${dependency}" \ + ${sudo} "${cosy_prefix}/bin/luarocks" install "${dependency}" \ >> "${cosy_log}" 2>&1 \ && echo -e "${green}success${nc}" \ || echo -e "${red}failure${nc}" @@ -259,6 +219,7 @@ fi ( cd "${currentwd}" || exit 1 web_dependencies=( + auth0-lock bootbox bootstrap3 d3 @@ -307,8 +268,10 @@ echo -n "Installing openresty... " cd "${dir}" || exit 1 ./configure --prefix="${cosy_prefix}" \ --without-lua51 \ + --with-luajit="${cosy_prefix}" \ --with-ipv6 \ - --with-pcre-jit + --with-pcre-jit \ + -j"${parallel}" make -j"${parallel}" ${sudo} make install make clean From e0ff1528908b4d3e74572358a4b8f196652f2036 Mon Sep 17 00:00:00 2001 From: Alban Linard Date: Tue, 5 Apr 2016 22:11:20 +0200 Subject: [PATCH 2/6] Remove libev dependency. --- .gitmodules | 3 --- dependencies/libev | 1 - 2 files changed, 4 deletions(-) delete mode 160000 dependencies/libev diff --git a/.gitmodules b/.gitmodules index f91dc77..2ac186f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,6 +7,3 @@ [submodule "lua.vm.js"] path = dependencies/lua.vm.js url = https://github.com/kripken/lua.vm.js.git -[submodule "libev"] - path = dependencies/libev - url = https://github.com/enki/libev.git diff --git a/dependencies/libev b/dependencies/libev deleted file mode 160000 index e3a3843..0000000 --- a/dependencies/libev +++ /dev/null @@ -1 +0,0 @@ -Subproject commit e3a384312f505e7c20afb7bcbff47a1be1ac6eed From b651b923991d0bc159bc798dd3e9697040a2269b Mon Sep 17 00:00:00 2001 From: Alban Linard Date: Tue, 5 Apr 2016 22:39:50 +0200 Subject: [PATCH 3/6] Add nginx-jwt to dependencies. --- .gitmodules | 3 +++ bin/install | 11 +++++++++ dependencies/nginx-jwt | 1 + dependencies/nginx-jwt-master-1.rockspec | 29 ++++++++++++++++++++++++ 4 files changed, 44 insertions(+) create mode 160000 dependencies/nginx-jwt create mode 100644 dependencies/nginx-jwt-master-1.rockspec diff --git a/.gitmodules b/.gitmodules index 2ac186f..5fefd57 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "lua.vm.js"] path = dependencies/lua.vm.js url = https://github.com/kripken/lua.vm.js.git +[submodule "dependencies/nginx-jwt"] + path = dependencies/nginx-jwt + url = https://github.com/auth0/nginx-jwt.git diff --git a/bin/install b/bin/install index 0ad8a35..0cc4868 100755 --- a/bin/install +++ b/bin/install @@ -282,6 +282,17 @@ echo -n "Installing openresty... " && echo -e "${green}success${nc}" \ || echo -e "${red}failure${nc}" +# Install resty-jwt: +echo -n "Installing openresty... " +( + cd "${currentwd}/dependencies/nginx-jwt" || exit 1 + ./build deps + cd .. + "${cosy_prefix}/bin/luarocks" make nginx-jwt-master-1.rockspec +) >> "${cosy_log}" 2>&1 \ + && echo -e "${green}success${nc}" \ + || echo -e "${red}failure${nc}" + ( cd "${currentwd}" || exit 1 git rev-parse HEAD > "${cosy_temp}/environment.version" diff --git a/dependencies/nginx-jwt b/dependencies/nginx-jwt new file mode 160000 index 0000000..4c9e58d --- /dev/null +++ b/dependencies/nginx-jwt @@ -0,0 +1 @@ +Subproject commit 4c9e58dfe0e2f1b117fd6d9e53a06f83f39adf4e diff --git a/dependencies/nginx-jwt-master-1.rockspec b/dependencies/nginx-jwt-master-1.rockspec new file mode 100644 index 0000000..a69f30d --- /dev/null +++ b/dependencies/nginx-jwt-master-1.rockspec @@ -0,0 +1,29 @@ +package = "nginx-jwt" +version = "master-1" +source = { + url = "git://github.com/auth0/nginx-jwt.git" +} + +description = { + summary = "Nginx JWT authentication", + detailed = [[]], + homepage = "https://github.com/auth0/nginx-jwt", + license = "MIT/X11", + maintainer = "Alban Linard ", +} + +dependencies = { + "lua >= 5.1", + "basexx", + "lua-cjson", + "lua-resty-hmac", +} + +build = { + type = "builtin", + modules = { + ["nginx-jwt"] = "nginx-jwt/nginx-jwt.lua", + ["resty.jwt"] = "nginx-jwt/lib/resty/jwt.lua", + ["resty.evp"] = "nginx-jwt/lib/resty/evp.lua", + }, +} From 43d0341008eb273a74b6fd3ad98c5187db9a8e9a Mon Sep 17 00:00:00 2001 From: Alban Linard Date: Thu, 14 Apr 2016 15:05:26 +0200 Subject: [PATCH 4/6] Add postgresql dependency. --- .gitmodules | 9 --- bin/install | 88 ++---------------------- dependencies/lua.vm.js | 1 - dependencies/nginx-jwt | 1 - dependencies/nginx-jwt-master-1.rockspec | 29 -------- dependencies/openresty | 1 - 6 files changed, 4 insertions(+), 125 deletions(-) delete mode 160000 dependencies/lua.vm.js delete mode 160000 dependencies/nginx-jwt delete mode 100644 dependencies/nginx-jwt-master-1.rockspec delete mode 160000 dependencies/openresty diff --git a/.gitmodules b/.gitmodules index 5fefd57..bde5c19 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,12 +1,3 @@ -[submodule "ngx_openresty"] - path = dependencies/openresty - url = https://github.com/openresty/ngx_openresty [submodule "sh-realpath"] path = dependencies/sh-realpath url = https://github.com/mkropat/sh-realpath -[submodule "lua.vm.js"] - path = dependencies/lua.vm.js - url = https://github.com/kripken/lua.vm.js.git -[submodule "dependencies/nginx-jwt"] - path = dependencies/nginx-jwt - url = https://github.com/auth0/nginx-jwt.git diff --git a/bin/install b/bin/install index 0cc4868..7bd4944 100755 --- a/bin/install +++ b/bin/install @@ -14,15 +14,12 @@ do cosy_temp="${i#*=}" cosy_temp="${cosy_temp%/}" ;; - -m|--minimal) - minimal=true - ;; -i|--in-ci) in_ci=true ;; *) echo "Usage: " - echo " install [--prefix=PREFIX] [--temp=TEMP_DIR] [--minimal] [--in-ci]" + echo " install [--prefix=PREFIX] [--temp=TEMP_DIR] [--in-ci]" exit 1; ;; esac @@ -131,7 +128,8 @@ cosy_temp=$(realpath "${cosy_temp}") perl build-essential wget python python-pip \ libc6-dev libssl-dev \ libreadline-dev libncurses5-dev libpcre3-dev \ - redis-server imagemagick npm caca-utils libc-bin + redis-server imagemagick npm caca-utils libc-bin \ + postgresql ;; "Darwin") HOMEBREW_PREFIX=$(brew config | grep "HOMEBREW_PREFIX" | tr -d ' \t' | cut -d ":" -f 2) @@ -140,7 +138,7 @@ cosy_temp=$(realpath "${cosy_temp}") export LD_LIBRARY_PATH="${HOMEBREW_PREFIX}/lib:${LD_LIBRARY_PATH}" export DYLD_LIBRARY_PATH="${HOMEBREW_PREFIX}/lib:${DYLD_LIBRARY_PATH}" brew update - brew install openssl pcre python redis imagemagick wget npm libcaca + brew install openssl pcre python redis imagemagick wget npm libcaca postgresql brew link --force openssl ;; *) @@ -215,84 +213,6 @@ if [ ! -z "${minimal+x}" ]; then return fi -# Install web dependencies: -( - cd "${currentwd}" || exit 1 - web_dependencies=( - auth0-lock - bootbox - bootstrap3 - d3 - font-awesome - jquery - jquery-locationpicker - sjcl - ) - rm -rf node_modules - echo "Installing web dependencies... " - for dependency in ${web_dependencies[*]}; do - echo -n " Installing ${dependency}... " - npm install "${dependency}" >> "${cosy_log}" 2>&1 \ - && echo -e "${green}success${nc}" \ - || echo -e "${red}failure${nc}" - done - ${sudo} mkdir -p "${cosy_prefix}/share/cosy/www" - ${sudo} mkdir -p "${cosy_prefix}/share/cosy/www/js" - ${sudo} mkdir -p "${cosy_prefix}/share/cosy/www/css" - ${sudo} mkdir -p "${cosy_prefix}/share/cosy/www/fonts" - for module in node_modules/*; do - name=$(basename "${module}") - ${sudo} cp "${module}/dist/"*.js "${cosy_prefix}/share/cosy/www/js/" 2> /dev/null || true - ${sudo} cp "${module}/dist/"*.map "${cosy_prefix}/share/cosy/www/js/" 2> /dev/null || true - ${sudo} cp "${module}/dist/js/"* "${cosy_prefix}/share/cosy/www/js/" 2> /dev/null || true - ${sudo} cp "${module}/dist/css/"* "${cosy_prefix}/share/cosy/www/css/" 2> /dev/null || true - ${sudo} cp "${module}/dist/fonts/"* "${cosy_prefix}/share/cosy/www/fonts/" 2> /dev/null || true - ${sudo} cp "${module}/js/"* "${cosy_prefix}/share/cosy/www/js/" 2> /dev/null || true - ${sudo} cp "${module}/css/"* "${cosy_prefix}/share/cosy/www/css/" 2> /dev/null || true - ${sudo} cp "${module}/fonts/"* "${cosy_prefix}/share/cosy/www/fonts/" 2> /dev/null || true - ${sudo} cp "${module}/${name}"*.js "${cosy_prefix}/share/cosy/www/js/" 2> /dev/null || true - ${sudo} cp "${module}/${name}"*.map "${cosy_prefix}/share/cosy/www/js/" 2> /dev/null || true - ${sudo} cp "${module}/${name}"*.css "${cosy_prefix}/share/cosy/www/css/" 2> /dev/null || true - done - ${sudo} rm -rf node_modules - ${sudo} cp "dependencies/lua.vm.js/dist/lua.vm.js" "${cosy_prefix}/share/cosy/www/js/" -) - -# Install openresty: -echo -n "Installing openresty... " -( - cd "${currentwd}/dependencies/openresty" || exit 1 - make - for dir in openresty-*; do - if [ -d "${dir}" ]; then - cd "${dir}" || exit 1 - ./configure --prefix="${cosy_prefix}" \ - --without-lua51 \ - --with-luajit="${cosy_prefix}" \ - --with-ipv6 \ - --with-pcre-jit \ - -j"${parallel}" - make -j"${parallel}" - ${sudo} make install - make clean - break - fi - done -) >> "${cosy_log}" 2>&1 \ - && echo -e "${green}success${nc}" \ - || echo -e "${red}failure${nc}" - -# Install resty-jwt: -echo -n "Installing openresty... " -( - cd "${currentwd}/dependencies/nginx-jwt" || exit 1 - ./build deps - cd .. - "${cosy_prefix}/bin/luarocks" make nginx-jwt-master-1.rockspec -) >> "${cosy_log}" 2>&1 \ - && echo -e "${green}success${nc}" \ - || echo -e "${red}failure${nc}" - ( cd "${currentwd}" || exit 1 git rev-parse HEAD > "${cosy_temp}/environment.version" diff --git a/dependencies/lua.vm.js b/dependencies/lua.vm.js deleted file mode 160000 index 4430a0d..0000000 --- a/dependencies/lua.vm.js +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4430a0d85ac70e733cc3e24b21ee3534d0963765 diff --git a/dependencies/nginx-jwt b/dependencies/nginx-jwt deleted file mode 160000 index 4c9e58d..0000000 --- a/dependencies/nginx-jwt +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4c9e58dfe0e2f1b117fd6d9e53a06f83f39adf4e diff --git a/dependencies/nginx-jwt-master-1.rockspec b/dependencies/nginx-jwt-master-1.rockspec deleted file mode 100644 index a69f30d..0000000 --- a/dependencies/nginx-jwt-master-1.rockspec +++ /dev/null @@ -1,29 +0,0 @@ -package = "nginx-jwt" -version = "master-1" -source = { - url = "git://github.com/auth0/nginx-jwt.git" -} - -description = { - summary = "Nginx JWT authentication", - detailed = [[]], - homepage = "https://github.com/auth0/nginx-jwt", - license = "MIT/X11", - maintainer = "Alban Linard ", -} - -dependencies = { - "lua >= 5.1", - "basexx", - "lua-cjson", - "lua-resty-hmac", -} - -build = { - type = "builtin", - modules = { - ["nginx-jwt"] = "nginx-jwt/nginx-jwt.lua", - ["resty.jwt"] = "nginx-jwt/lib/resty/jwt.lua", - ["resty.evp"] = "nginx-jwt/lib/resty/evp.lua", - }, -} diff --git a/dependencies/openresty b/dependencies/openresty deleted file mode 160000 index 5f7f678..0000000 --- a/dependencies/openresty +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 5f7f6788765f766fb2ad4b903258a650844416f5 From e1cb443ef39935aec0331eff620769449e2bec64 Mon Sep 17 00:00:00 2001 From: Alban Linard Date: Thu, 14 Apr 2016 15:41:55 +0200 Subject: [PATCH 5/6] Cleanup install script. --- bin/install | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/bin/install b/bin/install index 7bd4944..4d81b8a 100755 --- a/bin/install +++ b/bin/install @@ -23,7 +23,6 @@ do exit 1; ;; esac - shift done # Useful variables: @@ -94,7 +93,7 @@ if command -v git >> "${cosy_log}" 2>&1; then popd >> "${cosy_log}" 2>&1 if [ "${version}" = "${oldversion}" ]; then echo -e "Environment is already installed at version ${green}${oldversion}${nc}." - return + exit 0 fi fi @@ -208,11 +207,6 @@ cosy_temp=$(realpath "${cosy_temp}") || echo -e "${red}failure${nc}" } -if [ ! -z "${minimal+x}" ]; then - echo -e "Skipping openresty and web dependencies as minimal install is set." - return -fi - ( cd "${currentwd}" || exit 1 git rev-parse HEAD > "${cosy_temp}/environment.version" From c8b493b6991fb37ef01ee7a53a6cfeb6fd548a07 Mon Sep 17 00:00:00 2001 From: Alban Linard Date: Mon, 23 May 2016 14:27:58 +0200 Subject: [PATCH 6/6] Remove useless dependencies. --- bin/install | 6 ------ 1 file changed, 6 deletions(-) diff --git a/bin/install b/bin/install index 4d81b8a..d639a9b 100755 --- a/bin/install +++ b/bin/install @@ -173,17 +173,11 @@ cosy_temp=$(realpath "${cosy_temp}") dependencies=( argparse busted - lapis luacheck luacov luacov-coveralls luafilesystem luasec - lustache - serpent - lua-cjson - lua-resty-http - md5 ) for dependency in ${dependencies[*]}; do if "${cosy_prefix}/bin/luarocks" list --porcelain \