Change summary
.github/workflows/release_actions.yml | 11 +++++++++
script/mixpanel_release/main.py | 30 ++++++++++++++++++++++++++
script/mixpanel_release/requirements.txt | 1
3 files changed, 42 insertions(+)
Detailed changes
@@ -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 }}
@@ -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()
@@ -0,0 +1 @@
+requests==2.28.1