قرینه از
https://github.com/matomo-org/matomo.git
synced 2025-08-21 22:47:43 +00:00

* Use explicit "ubuntu-24.04" runner for all workflows * Updates expected system test files with changed images * updates expected UI test files with changes due to slightly different font rendering * Updates UI test files with changes caused by now correctly rendered characters * Updates expected UI files changed due to a different error message in curl * submodule updates * remove duplicate screenshot file --------- Co-authored-by: Marc Neudert <marc@innocraft.com>
99 خطوط
3.2 KiB
YAML
99 خطوط
3.2 KiB
YAML
name: Build Tracker JS files
|
|
|
|
on:
|
|
issue_comment:
|
|
types: [created]
|
|
|
|
permissions:
|
|
actions: read
|
|
checks: none
|
|
contents: write
|
|
deployments: none
|
|
issues: read
|
|
packages: none
|
|
pull-requests: write
|
|
repository-projects: none
|
|
security-events: none
|
|
statuses: none
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Detect branch for PR
|
|
id: vars
|
|
run: |
|
|
PR=$( echo "${{ github.event.comment.issue_url }}" | grep -oE 'issues/([0-9]+)$' | cut -d'/' -f 2 )
|
|
|
|
PR_INFO=$( curl \
|
|
--request GET \
|
|
--header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' \
|
|
--header 'content-type: application/json' \
|
|
--url https://api.github.com/repos/$GITHUB_REPOSITORY/pulls/$PR )
|
|
REF=$(echo "${PR_INFO}" | jq -r .head.ref)
|
|
BASE=$(echo "${PR_INFO}" | jq -r .head.repo.full_name)
|
|
STATE=$(echo "${PR_INFO}" | jq -r .state)
|
|
|
|
if [[ $STATE == "closed" ]]
|
|
then
|
|
echo "Pull Request already closed."
|
|
exit 0;
|
|
fi
|
|
|
|
if [[ $BASE != $GITHUB_REPOSITORY ]]
|
|
then
|
|
echo "It's only possible to update local branches"
|
|
exit 0;
|
|
fi
|
|
|
|
echo "branch=$REF" >> $GITHUB_OUTPUT
|
|
if: github.event.comment.body == 'build js'
|
|
- uses: actions/setup-java@v4
|
|
with:
|
|
distribution: 'zulu'
|
|
java-version: '9'
|
|
if: steps.vars.outputs.branch != ''
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
ref: ${{ steps.vars.outputs.branch }}
|
|
lfs: false
|
|
persist-credentials: false
|
|
if: steps.vars.outputs.branch != ''
|
|
- name: Prepare git config
|
|
run: |
|
|
cat <<- EOF > $HOME/.netrc
|
|
machine github.com
|
|
login $GITHUB_ACTOR
|
|
password $GITHUB_TOKEN
|
|
machine api.github.com
|
|
login $GITHUB_ACTOR
|
|
password $GITHUB_TOKEN
|
|
EOF
|
|
chmod 600 $HOME/.netrc
|
|
git config --global user.email "$GITHUB_ACTOR@users.noreply.github.com"
|
|
git config --global user.name "$GITHUB_ACTOR"
|
|
git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/$GITHUB_REPOSITORY
|
|
if: steps.vars.outputs.branch != ''
|
|
- name: Fetch YUICompressor
|
|
run: |
|
|
cd $GITHUB_WORKSPACE/js
|
|
wget https://github.com/yui/yuicompressor/releases/download/v2.4.8/yuicompressor-2.4.8.zip
|
|
unzip yuicompressor-2.4.8.zip
|
|
if: steps.vars.outputs.branch != ''
|
|
- name: Build JS files
|
|
run: |
|
|
cd $GITHUB_WORKSPACE/js
|
|
sed '/<DEBUG>/,/<\/DEBUG>/d' < piwik.js | sed 's/eval/replacedEvilString/' | java -jar yuicompressor-2.4.8.jar --type js --line-break 1000 | sed 's/replacedEvilString/eval/' | sed 's/^[/][*]/\/*!/' > piwik.min.js && cp piwik.min.js ../piwik.js && cp piwik.min.js ../matomo.js
|
|
if: steps.vars.outputs.branch != ''
|
|
- name: Push changes
|
|
run: |
|
|
if [[ $( git diff --numstat ) ]]
|
|
then
|
|
cd $GITHUB_WORKSPACE
|
|
git add piwik.js matomo.js js/piwik.min.js
|
|
git commit -m "Build tracker JS files"
|
|
git push
|
|
fi
|
|
if: steps.vars.outputs.branch != ''
|