Some checks failed
Code scanning / CodeQL (push) Failing after 15s
Zulip production suite / Ubuntu 22.04 production build (push) Failing after 26s
Zulip production suite / Debian 12 production install with custom db name and user (push) Has been skipped
Zulip production suite / Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga (push) Has been skipped
Zulip production suite / Ubuntu 24.04 production install (push) Has been skipped
Zulip production suite / Ubuntu 26.04 production install (push) Has been skipped
Zulip production suite / Debian 13 production install (push) Has been skipped
Zulip production suite / 7.0 Version Upgrade (push) Has been skipped
Zulip production suite / 8.0 Version Upgrade (push) Has been skipped
Zulip production suite / 6.0 Version Upgrade (push) Has been skipped
Zulip production suite / 10.0 Version Upgrade (push) Has been skipped
Zulip production suite / 9.0 Version Upgrade (push) Has been skipped
Zulip production suite / 12.0 Version Upgrade (push) Has been skipped
Zulip production suite / 11.0 Version Upgrade (push) Has been skipped
GitHub Actions Security Analysis with zizmor / zizmor (push) Failing after 3s
Zulip CI / Debian 12 (Python 3.11, backend + documentation) (push) Failing after 26s
Zulip CI / Ubuntu 22.04 (Python 3.10, backend + frontend) (push) Failing after 3s
Zulip CI / Ubuntu 24.04 (Python 3.12, backend) (push) Failing after 25s
Zulip CI / Ubuntu 26.04 (Python 3.14, backend) (push) Failing after 25s
Zulip CI / Debian 13 (Python 3.13, backend) (push) Failing after 28s
Zulip production suite / Required jobs (push) Has been cancelled
Zulip CI / Required jobs (push) Has been cancelled
API Documentation Update Check / check-feature-level-updated (push) Has been cancelled
API Documentation Update Check / notify-if-api-docs-changed (push) Has been cancelled
109 lines
3.3 KiB
YAML
109 lines
3.3 KiB
YAML
name: Notify of issues resolved in latest Zulip Cloud deploy
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- zulip-cloud-current
|
|
workflow_dispatch:
|
|
inputs:
|
|
before:
|
|
description: "Old commit-ish"
|
|
required: true
|
|
after:
|
|
description: "New commit-ish"
|
|
required: true
|
|
stream:
|
|
description: "Stream to send to"
|
|
default: "zulip cloud"
|
|
topic:
|
|
description: "Topic to send to"
|
|
default: "latest deploy"
|
|
|
|
permissions:
|
|
contents: read
|
|
issues: read
|
|
pull-requests: read
|
|
|
|
jobs:
|
|
build-messages:
|
|
runs-on: ubuntu-slim
|
|
outputs:
|
|
filenames: ${{ steps.set-matrix.outputs.filenames }}
|
|
steps:
|
|
- name: Check out repository
|
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
with:
|
|
fetch-depth: 0
|
|
persist-credentials: false
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
with:
|
|
python-version: "3.x"
|
|
|
|
- name: Install uv
|
|
run: |
|
|
./scripts/lib/install-uv
|
|
|
|
- name: Generate list of resolved issues
|
|
id: generate
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
BASE: ${{ inputs.before || github.event.before }}
|
|
HEAD: ${{ inputs.after || github.event.after }}
|
|
run: |
|
|
set -o pipefail
|
|
|
|
mkdir closed-by-commits-output
|
|
./tools/closed-by-commits "$BASE" "$HEAD" \
|
|
| perl -ple 'undef $/;s/\n\n/\x00/g' \
|
|
| split -t '\0' -C 8000 -d - closed-by-commits-output/message-
|
|
perl -pi -e 's/\00/\n\n/g' closed-by-commits-output/message-*
|
|
|
|
- name: Upload messages as artifacts
|
|
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
|
with:
|
|
name: closed-by-commits-output
|
|
path: closed-by-commits-output/
|
|
|
|
- name: Store filename list for matrix
|
|
id: set-matrix
|
|
run: |
|
|
cd closed-by-commits-output/
|
|
echo "filenames=$(ls | jq -Rnc '[inputs]')" >> $GITHUB_OUTPUT
|
|
|
|
send-messages:
|
|
needs: build-messages
|
|
runs-on: ubuntu-slim
|
|
strategy:
|
|
max-parallel: 1
|
|
matrix:
|
|
filename: ${{ fromJson(needs.build-messages.outputs.filenames) }}
|
|
if: ${{ success() && github.repository == 'zulip/zulip' }}
|
|
steps:
|
|
- name: Download messages as artifacts
|
|
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
|
|
with:
|
|
name: closed-by-commits-output
|
|
path: closed-by-commits-output/
|
|
|
|
- name: Read message contents
|
|
id: read-file
|
|
run: |
|
|
echo "content<<EOF" >> $GITHUB_OUTPUT
|
|
cat "closed-by-commits-output/$FILENAME" >> $GITHUB_OUTPUT
|
|
echo "EOF" >> $GITHUB_OUTPUT
|
|
env:
|
|
FILENAME: ${{ matrix.filename }}
|
|
|
|
- name: Send to Zulip
|
|
uses: zulip/github-actions-zulip/send-message@f675f2b4eb2a95fae974215476dcb7ad8dfeff6b # v2.0.2
|
|
with:
|
|
api-key: ${{ secrets.ZULIP_BOT_KEY }}
|
|
email: "github-actions-bot@chat.zulip.org"
|
|
organization-url: "https://chat.zulip.org"
|
|
to: "${{ inputs.stream || 'zulip cloud' }}"
|
|
topic: "${{ inputs.topic || 'latest deploy' }}"
|
|
type: "stream"
|
|
content: ${{ steps.read-file.outputs.content }}
|