name: Validation (test + coverage) on: push: branches-ignore: - develop - release - main jobs: test: runs-on: macos-build steps: - name: Checkout repository (workaround - Gitea git-upload-pack bug, see go-gitea/gitea#21819) run: | curl -sSfL -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ -o /tmp/repo.tar.gz \ "${{ github.server_url }}/api/v1/repos/${{ github.repository }}/archive/${{ github.sha }}.tar.gz" tar -xzf /tmp/repo.tar.gz --strip-components=1 -C "$GITHUB_WORKSPACE" - name: Prune orphaned simulators (shared runner, avoids stale-UDID boot failures) run: xcrun simctl delete unavailable || true - name: Run tests with coverage run: fastlane tests - name: Email notification if: always() env: SMTP_USER: ${{ secrets.SMTP_USER }} SMTP_PASS: ${{ secrets.SMTP_PASS }} NOTIFY_EMAIL_TO: ${{ secrets.NOTIFY_EMAIL_TO }} run: | STATUS="${{ job.status }}" SUBJECT="[PediFoods CI] ${STATUS} - ${{ github.workflow }}" BODY="Job: ${{ github.workflow }} / ${{ github.job }} Status: ${STATUS} Branch: ${{ github.ref_name }} Commit: ${{ github.sha }} Run: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" printf 'From: PediFoods CI <%s>\r\nTo: %s\r\nSubject: %s\r\n\r\n%s\r\n' \ "$SMTP_USER" "$NOTIFY_EMAIL_TO" "$SUBJECT" "$BODY" | \ curl --silent --show-error \ --url "smtp://mail.loverde.com.br:587" \ --ssl-reqd \ --mail-from "$SMTP_USER" \ --mail-rcpt "$NOTIFY_EMAIL_TO" \ --user "$SMTP_USER:$SMTP_PASS" \ --upload-file - || true