Files
Odoo-Build/scripts/odoo15_gio_payroll_custom_employee_patch
T
2022-06-16 13:49:04 +02:00

43 lines
959 B
Bash
Executable File

#!/bin/bash
# Get script name
SCRIPT=$(basename "$0")
# First param is docker container
CONTAINER=$1
# Default configuration
PACKAGE_PATH="/mnt/addons/"
# Custom configuration
FILE_PATH="${PACKAGE_PATH}gio_payroll_custom/models/hr_employee.py"
FIND="from odoo import api, fields, models, _"
IFS='' read -r -d '' APPEND << EOM
class EmployeePublic(models.Model):
_inherit = 'hr.employee.public'
gio_children_training = fields.Integer(string="Anzahl Kinder im Studium")
EOM
# Get filename
FILE=`basename "$FILE_PATH"`
# Copy from docker
docker cp "$CONTAINER":"$FILE_PATH" .
# Find and append
LINE=$(grep -n "$FIND" $FILE | cut -f1 -d:)
awk -v n="$LINE" -v s="$APPEND" 'NR-1 == n {print s} {print}' $FILE > $FILE.tmp && mv $FILE.tmp $FILE
# Copy back to docker
docker cp $FILE "$CONTAINER":"$FILE_PATH"
# Remove file
rm -f $FILE
# Register patch installation
echo "Patch $SCRIPT applied."
touch "/etc/odoo/${SCRIPT}_${CONTAINER}_installed"