diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a28e80f62a..15ae18ed10 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -9,6 +9,8 @@ jobs: stable: runs-on: ubuntu-latest + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} steps: - name: Checkout Code uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # pin@v3.1.0 diff --git a/InvenTree/InvenTree/tasks.py b/InvenTree/InvenTree/tasks.py index f3e0258053..32c88e42a4 100644 --- a/InvenTree/InvenTree/tasks.py +++ b/InvenTree/InvenTree/tasks.py @@ -2,6 +2,7 @@ import json import logging +import os import re import warnings from dataclasses import dataclass @@ -338,7 +339,16 @@ def check_for_updates(): logger.info("Could not perform 'check_for_updates' - App registry not ready") return - response = requests.get('https://api.github.com/repos/inventree/inventree/releases/latest') + headers = {} + + # If running within github actions, use authentication token + if settings.TESTING: + token = os.getenv('GITHUB_TOKEN', None) + + if token: + headers['Authorization'] = f"Bearer {token}" + + response = requests.get('https://api.github.com/repos/inventree/inventree/releases/latest', headers=headers) if response.status_code != 200: raise ValueError(f'Unexpected status code from GitHub API: {response.status_code}') # pragma: no cover diff --git a/ci/version_check.py b/ci/version_check.py index 53bec2638d..dee36eb74a 100644 --- a/ci/version_check.py +++ b/ci/version_check.py @@ -21,7 +21,16 @@ import requests def get_existing_release_tags(): """Request information on existing releases via the GitHub API""" - response = requests.get('https://api.github.com/repos/inventree/inventree/releases') + # Check for github token + token = os.getenv('GITHUB_TOKEN', None) + headers = None + + if token: + headers = { + "Authorization": f"Bearer {token}" + } + + response = requests.get('https://api.github.com/repos/inventree/inventree/releases', headers=headers) if response.status_code != 200: raise ValueError(f'Unexpected status code from GitHub API: {response.status_code}')