6 name: Check messages.po changes
9 - name: Install gettext
10 run: sudo apt-get install gettext
12 - name: Checkout Friendica Base
13 uses: actions/checkout@v2
15 repository: 'friendica/friendica'
16 ref: ${{ github.base_ref }}
18 - name: Checkout current Friendica Addons
19 uses: actions/checkout@v2
23 - name: Get changed files
25 uses: jitterbit/get-changed-files@v1
27 - name: Run Xgettext for each changed addon
29 addon_files=(${{ steps.changes.outputs.all }})
30 find_result=$(printf "%s\n" "${addon_files[@]}" | sed '/^\./d' | cut -d "/" -f1 | uniq)
31 for addon in $find_result
33 ./bin/run_xgettext.sh --addon $addon
36 - name: Check if messages.po needs an update
38 echo "::group::Check messages.po"
39 # Skip all lines of the git diff starting with "@@" or comments or starting "POT-Creation-Date"
41 if [[ $(git diff -U0 "**/messages.po" | awk '!/index|diff|\-\-\-|\+\+\+|@@|\-"POT-Creation-Date|\+"POT-Creation-Date|\+#|\-#/{print }' | wc -l) > 0 ]]; then
42 echo "::error file=messages.po::messages.po is out of date"
45 echo "Nothing to update"