Skip to content

daily-umami-report #323

daily-umami-report

daily-umami-report #323

name: daily-umami-report
permissions:
contents: none
on:
schedule:
- cron: '30 17 * * *'
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
umamiReportJob:
name: daily umami report
runs-on: ubuntu-latest
env:
UMAMI_LOGO: https://raw.githubusercontent.com/umami-software/website/refs/heads/master/public/images/umami-logo.png
outputs:
umami_page_views: ${{ steps.umamiReportStep.outputs.pageViews }}
umami_report_file: ${{ steps.umamiReportStep.outputs.umamiReportFile }}
# umami_report: ${{ steps.umamiReport.outputs.umamiReport }}
# umami_one_line_report: ${{ steps.umamiReport.outputs.umamiOneLineReport }}
steps:
- name: Create Daily Umami report
id: umamiReportStep
uses: boly38/action-umami-report@umami-server-2.17.0
with:
umami-server: ${{secrets.UMAMI_SERVER}}
umami-user: ${{secrets.UMAMI_USERNAME}}
umami-password: ${{secrets.UMAMI_PASSWORD}}
umami-site-domain: ${{secrets.UMAMI_SITE_DOMAIN}}
umami-report-file: 'umamiReport.txt'
env:
UMAMI_CLIENT_TIMEOUT_MS: 5000
- name: Assume umamiReportFile exists and pageViews != 0
run: |
if [[ -z "${{ steps.umamiReportStep.outputs.umamiReportFile }}" ]]; then
echo "::error title=no umamiReportFile::❌ Error : no umamiReportFile"
exit 1
fi
if [[ "${{ steps.umamiReportStep.outputs.pageViews }}" == "0" ]]; then
echo "::notice title=no pageViews::ℹ️ pageViews=0 😞"
exit 0
fi
echo "::notice title=OneLineReport::ℹ️ ${{ steps.umamiReportStep.outputs.umamiOneLineReport }}"
- name: Send Umami Host report to discord if pageViews is positive
if: steps.umamiReportStep.outputs.pageViews != '0'
uses: tsickert/discord-webhook@v7.0.0
with:
webhook-url: ${{ secrets.UMAMI_TO_DISCORD_WEBHOOK_URL }}
username: "Umami report"
avatar-url: ${{ env.UMAMI_LOGO }}
content: "${{ steps.umamiReportStep.outputs.umamiOneLineReport }}"
filename: "${{ steps.umamiReportStep.outputs.umamiReportFile }}"
- name: Have a look at !secret results from next step using outputs
run: |
echo "${{ steps.umamiReportStep.outputs.umamiReportFile }}"
ls -la "${{ steps.umamiReportStep.outputs.umamiReportFile }}"
nextJob:
needs: umamiReportJob
name: github action next job
runs-on: ubuntu-latest
steps:
- name: print var
run: |
echo "FROM umamiReport outputs: ${{ needs.umamiReportJob.outputs.umami_report_file }} and ${{ needs.umamiReportJob.outputs.umami_page_views }} pageviews "