mirror of
https://github.com/docker-mailserver/docker-mailserver.git
synced 2025-08-31 07:09:57 +02:00
Complete Refactor for target/bin
(#1654)
* documentation and script updates trying to fix #1647 * preparations for refactoring target/bin/ * complete refactor for target/bin/ * changing script output slightly * outsourcing functions in `bin-helper.sh` * re-wrote linting to allow for proper shellcheck -x execution * show explanation for shellcheck ignore * adding some more information
This commit is contained in:
parent
0ada57d87c
commit
da8171388f
37 changed files with 579 additions and 504 deletions
|
@ -1,18 +1,20 @@
|
|||
#! /bin/bash
|
||||
|
||||
# ? This is done to ignore the message "Make sure not to read and write
|
||||
# ? the same file in the same pipeline", which is a result of ${DATABASE}
|
||||
# ? being used below. (This disables the message file-wide.)
|
||||
# shellcheck disable=SC2094
|
||||
|
||||
# shellcheck source=../bin-helper.sh
|
||||
. /usr/local/bin/bin-helper.sh
|
||||
|
||||
DATABASE=${DATABASE:-/tmp/docker-mailserver/postfix-accounts.cf}
|
||||
|
||||
errex() {
|
||||
echo "$@" 1>&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
[ -f $DATABASE ] || errex "No postfix-accounts.cf file"
|
||||
[ -s $DATABASE ] || errex "Empty postfix-accounts.cf - no users have been added"
|
||||
[[ -f ${DATABASE} ]] || errex "Error: No postfix-virtual.cf file"
|
||||
[[ -s ${DATABASE} ]] || errex "Error: Empty postfix-virtual.cf - no aliases have been added"
|
||||
|
||||
# Lock database even though we are only reading
|
||||
(
|
||||
flock -e 200
|
||||
(grep -v "^\s*$\|^\s*\#" "$DATABASE" || true) | awk -F '|' '{ print $1; }'
|
||||
) 200<$DATABASE
|
||||
|
||||
( grep -v "^\s*$\|^\s*\#" "${DATABASE}" || true ) | awk -F '|' '{ print $1; }'
|
||||
) 200< "${DATABASE}"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue