diff --git a/.github/workflows/release_actions.yml b/.github/workflows/release_actions.yml index 72c79b8692..1e71a7a7de 100644 --- a/.github/workflows/release_actions.yml +++ b/.github/workflows/release_actions.yml @@ -21,3 +21,14 @@ jobs: ${{ github.event.release.body }} ``` + mixpanel_release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 + with: + python-version: "3.10.5" + architecture: "x64" + cache: "pip" + - run: pip install -r script/mixpanel_release/requirements.txt + - run: python script/mixpanel_release/main.py ${{ github.event.release.tag_name }} ${{ secrets.MIXPANEL_PROJECT_ID }} ${{ secrets.MIXPANEL_SERVICE_ACCOUNT_USERNAME }} ${{ secrets.MIXPANEL_SERVICE_ACCOUNT_SECRET }} diff --git a/script/mixpanel_release/main.py b/script/mixpanel_release/main.py new file mode 100644 index 0000000000..e2a0eeb990 --- /dev/null +++ b/script/mixpanel_release/main.py @@ -0,0 +1,30 @@ +import datetime +import sys +import requests + +def main(): + version = sys.argv[1] + version = version.removeprefix("v") + project_id = sys.argv[2] + account_username = sys.argv[3] + account_secret = sys.argv[4] + + current_datetime = datetime.datetime.now(datetime.timezone.utc) + current_datetime = current_datetime.strftime("%Y-%m-%d %H:%M:%S") + + url = f"https://mixpanel.com/api/app/projects/{project_id}/annotations" + + payload = { + "date": current_datetime, + "description": version + } + + response = requests.post( + url, + auth=(account_username, account_secret), + json=payload + ) + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/script/mixpanel_release/requirements.txt b/script/mixpanel_release/requirements.txt new file mode 100644 index 0000000000..5e77405687 --- /dev/null +++ b/script/mixpanel_release/requirements.txt @@ -0,0 +1 @@ +requests==2.28.1 \ No newline at end of file