Ajustes em funções e plugins
This commit is contained in:
@@ -277,14 +277,14 @@ function system.create_user {
|
|||||||
|
|
||||||
if ! [[ $(id -u ${_user} 2>/dev/null) ]]; then
|
if ! [[ $(id -u ${_user} 2>/dev/null) ]]; then
|
||||||
if [[ "${_opts}" =~ "-r" ]] || [[ "${_opts}" =~ "--system" ]]; then
|
if [[ "${_opts}" =~ "-r" ]] || [[ "${_opts}" =~ "--system" ]]; then
|
||||||
${ui}.status info $"Creating system user: %s" ${_user}
|
${ui}.status info $"Criando usuário do sistema: %s" ${_user}
|
||||||
useradd -M -U -G ${_groups} ${_opts} ${_user}
|
useradd -M -U -G ${_groups} ${_opts} ${_user}
|
||||||
else
|
else
|
||||||
${ui}.status info $"Creating user: %s" ${_user}
|
${ui}.status info $"Criando usuário: %s" ${_user}
|
||||||
useradd -m -d /home/${_user} -U -G ${_groups} ${_opts} ${_user}
|
useradd -m -d /home/${_user} -U -G ${_groups} ${_opts} ${_user}
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
${ui}.status info $"Updating group membership for user: %s" ${_user}
|
${ui}.status info $"Atualizando grupos do usuário: %s" ${_user}
|
||||||
usermod -aG ${_groups} ${_user}
|
usermod -aG ${_groups} ${_user}
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@@ -576,14 +576,13 @@ function plugin.pyenv {
|
|||||||
function plugin.pip {
|
function plugin.pip {
|
||||||
local _metadata_cache="${CACHEDIR}"
|
local _metadata_cache="${CACHEDIR}"
|
||||||
local _version_metadata="${_metadata_cache}/versions.yml"
|
local _version_metadata="${_metadata_cache}/versions.yml"
|
||||||
#local _py_version=${@:1:1}
|
|
||||||
|
|
||||||
# Retorna com erro se o produto não estiver definido
|
# Retorna com erro se o produto não estiver definido
|
||||||
[[ -z "${PRODUCT}" ]] && return 1
|
[[ -z "${PRODUCT}" ]] && return 1
|
||||||
local _product_cache="${CACHEDIR}/${PRODUCT}"
|
local _product_cache="${CACHEDIR}/${PRODUCT}"
|
||||||
|
|
||||||
local __pip="runuser -l ${PRODUCT} -- python -m pip"
|
local __pip="runuser -l ${PRODUCT} -- python -m pip"
|
||||||
local _pip_log="$(mktemp ${_product_cache}/${self}.pip.XXXXX)"
|
local _pip_log="$(mktemp ${_product_cache}/${self}.pip.XXXXX).log"
|
||||||
|
|
||||||
_pip.download() {
|
_pip.download() {
|
||||||
for _pkg in ${DOWNLOADS}; do
|
for _pkg in ${DOWNLOADS}; do
|
||||||
@@ -617,14 +616,17 @@ function plugin.pip {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_pip.install() {
|
_pip.install() {
|
||||||
local _pip_opts=" \
|
local \
|
||||||
--disable-pip-version-check
|
_pip_opts="--disable-pip-version-check" \
|
||||||
"
|
_req_file
|
||||||
|
|
||||||
# Instala pacotes e módulos do python
|
# Instala pacotes e módulos do python
|
||||||
(
|
(
|
||||||
${__pip} ${_pip_opts} install --upgrade --user pip setuptools \
|
${__pip} ${_pip_opts} install --upgrade --user pip setuptools \
|
||||||
&& find "${_product_cache}"/ -maxdepth 1 -name "requirements*.txt" \
|
&& find "${_product_cache}"/ -maxdepth 1 -name "requirements*.txt" \
|
||||||
| xargs ${__pip} install -r
|
| while read _req_file; do \
|
||||||
|
${__pip} install -r ${_req_file}
|
||||||
|
done
|
||||||
) 2>&1 \
|
) 2>&1 \
|
||||||
| tee -a ${_pip_log} \
|
| tee -a ${_pip_log} \
|
||||||
| ${ui}.subprocess.output 10 \
|
| ${ui}.subprocess.output 10 \
|
||||||
@@ -677,15 +679,20 @@ function installer.download {
|
|||||||
[[ -z "${_quiet}" ]] && ${ui}.status info $"Fazendo download [${_src}]"
|
[[ -z "${_quiet}" ]] && ${ui}.status info $"Fazendo download [${_src}]"
|
||||||
#(echo ${_message} | base64 -d \
|
#(echo ${_message} | base64 -d \
|
||||||
# | bsdtar --passphrase ${_token_pass} -C $(dirname ${_token}) -xOf - > ${_token} \
|
# | bsdtar --passphrase ${_token_pass} -C $(dirname ${_token}) -xOf - > ${_token} \
|
||||||
|
local _err=;
|
||||||
(self.get_token > ${_token} \
|
(self.get_token > ${_token} \
|
||||||
&& chmod 0400 ${_token} \
|
&& chmod 0400 ${_token} \
|
||||||
&& mkdir -p $(dirname "${_dst}") \
|
&& mkdir -p $(dirname "${_dst}") \
|
||||||
&& scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no \
|
&& _err=$(scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no \
|
||||||
-qi ${_token} "${_repo_user}@${_repo_home}/${_src}" "${_dst}" \
|
-qi ${_token} "${_repo_user}@${_repo_home}/${_src}" "${_dst}" 2>&1) \
|
||||||
&& color=green || color=red; \
|
&& color=green || color=red; \
|
||||||
${ui}.color ${color}; \
|
${ui}.tab 2; \
|
||||||
|
${ui}.color ${color} "$(${ui}.item '')"; \
|
||||||
! [[ "${_quiet}" == "silent" ]] \
|
! [[ "${_quiet}" == "silent" ]] \
|
||||||
&& echo "${_src}" | sed "s/^\(.*\)/\ \ $(${ui}.item '')\1/g"; \
|
&& (
|
||||||
|
echo -n "${_src}"; \
|
||||||
|
! [[ -z "${_err}" ]] && echo " (${_err^})" || echo;
|
||||||
|
)
|
||||||
${ui}.color none; \
|
${ui}.color none; \
|
||||||
)
|
)
|
||||||
rm -f ${_token}
|
rm -f ${_token}
|
||||||
@@ -848,14 +855,14 @@ function product.download {
|
|||||||
| jq ".${_k}"
|
| jq ".${_k}"
|
||||||
)
|
)
|
||||||
local _file; for _file in ${_files}; do
|
local _file; for _file in ${_files}; do
|
||||||
|
_file="${_file//\$\{variant\}/${_prod_variant}}"
|
||||||
installer.download \
|
installer.download \
|
||||||
"${_files_root}/config/${PRODUCT}/${_file//\"}" \
|
"${_files_root}/config/${PRODUCT}/${_file//\"}" \
|
||||||
"${CACHEDIR}/${PRODUCT}/${_file//\"}" \
|
"${CACHEDIR}/${PRODUCT}/${_file//\"}" \
|
||||||
--quiet
|
--quiet
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
${ui}.writeln
|
||||||
exit 1
|
|
||||||
|
|
||||||
chmod g+rx,o+rx ${CACHEDIR}
|
chmod g+rx,o+rx ${CACHEDIR}
|
||||||
#${ui}.status info $"Download concluído."
|
#${ui}.status info $"Download concluído."
|
||||||
@@ -1033,8 +1040,8 @@ function product.install {
|
|||||||
product.setup_repos ${REPOS}
|
product.setup_repos ${REPOS}
|
||||||
|
|
||||||
# -- Instalando pacotes necessários
|
# -- Instalando pacotes necessários
|
||||||
#DEV## system.install_pkgs ${BUILD_REQUIRES}
|
system.install_pkgs ${BUILD_REQUIRES}
|
||||||
#DEV## ${ui}.prompt "Aguarde ou pressione ENTER para continuar ..." -s -t 10 || :
|
${ui}.prompt "Aguarde ou pressione ENTER para continuar ..." -s -t 10 || :
|
||||||
|
|
||||||
# -- Compilando requisitos não empacotados
|
# -- Compilando requisitos não empacotados
|
||||||
_builds=$(grep "^local/" ${metadata_cache}/${PRODUCT}.local.build)
|
_builds=$(grep "^local/" ${metadata_cache}/${PRODUCT}.local.build)
|
||||||
@@ -1055,17 +1062,14 @@ function product.install {
|
|||||||
fi
|
fi
|
||||||
${ui}.subtitle $"Executando plugin: "${_args%@*}
|
${ui}.subtitle $"Executando plugin: "${_args%@*}
|
||||||
${_callback} ${_k_args//;/\ }
|
${_callback} ${_k_args//;/\ }
|
||||||
|
|
||||||
${ui}.prompt "Aguarde ou pressione ENTER para continuar ..." -s -t 10 || :
|
${ui}.prompt "Aguarde ou pressione ENTER para continuar ..." -s -t 10 || :
|
||||||
done
|
done
|
||||||
|
echo "TODO: Configurar produto (function product.configure)"
|
||||||
|
|
||||||
## -- SIG ----------------------------- #
|
## -- SIG ----------------------------- #
|
||||||
# # Pip modules
|
# # Pip modules
|
||||||
# ${ui}.status info $"Instalando produto [%s] ..." "${_name}"
|
|
||||||
# ${ui}.color gold
|
|
||||||
# for _lib in ${_libs}; do
|
# for _lib in ${_libs}; do
|
||||||
# _lbpv=$(parsers.yaml ${CACHEDIR}/versions.yml libs.python${_pdpy/.*}.${_lib})
|
|
||||||
# runuser -l ${PRODUCT} -- python -m pip install --user \
|
|
||||||
# "${CACHEDIR}/${PRODUCT}/${_lib}-${_lbpv#*/}.tar.gz"
|
|
||||||
# if [[ "${_lib}" == "kiwi" ]]; then
|
# if [[ "${_lib}" == "kiwi" ]]; then
|
||||||
# _f=/srv/sig/${PRODUCT}/.local/lib/python2.7/site-packages/kiwi/__installed__.py
|
# _f=/srv/sig/${PRODUCT}/.local/lib/python2.7/site-packages/kiwi/__installed__.py
|
||||||
# find $(dirname ${_f})/ -name *.pyc -delete
|
# find $(dirname ${_f})/ -name *.pyc -delete
|
||||||
|
|||||||
Reference in New Issue
Block a user