diff --git a/.github/workflows/check-deb-versions.yml b/.github/workflows/check-deb-versions.yml index 46d3c4a..efd6c07 100644 --- a/.github/workflows/check-deb-versions.yml +++ b/.github/workflows/check-deb-versions.yml @@ -8,12 +8,14 @@ on: jobs: check-and-update: runs-on: ubuntu-latest + permissions: + contents: write steps: - name: Checkout repository uses: actions/checkout@v4 with: - token: ${{ secrets.GITHUB_TOKEN }} + token: ${{ secrets.PERSONAL_TOKEN }} - name: Set up Python uses: actions/setup-python@v5 @@ -27,5 +29,6 @@ jobs: - name: Run version checker env: - PERSONAL_TOKEN: ${{ secrets.PERSONAL_TOKEN }} + PERSONAL_TOKEN: ${{ secrets.PERSONAL_TOKEN }} + GITHUB_REPOSITORY: ${{ github.repository }} run: python check_deb_versions.py diff --git a/.github/workflows/update_versions.yml b/.github/workflows/update_versions.yml index 35ce73a..1c4dfbd 100644 --- a/.github/workflows/update_versions.yml +++ b/.github/workflows/update_versions.yml @@ -12,10 +12,14 @@ on: jobs: update-version: runs-on: ubuntu-latest + permissions: + contents: write steps: - name: Checkout repository uses: actions/checkout@v4 + with: + token: ${{ secrets.PERSONAL_TOKEN }} - name: Set up Python uses: actions/setup-python@v5 @@ -33,4 +37,4 @@ jobs: git config --local user.name "GitHub Action" git add versions.json git commit -m "Added version ${{ github.event.inputs.version }}" - git push + git push "https://${{ secrets.PERSONAL_TOKEN }}@github.com/${{ github.repository }}.git" HEAD:main diff --git a/check_deb_versions.py b/check_deb_versions.py index 0f1bad7..155ccac 100644 --- a/check_deb_versions.py +++ b/check_deb_versions.py @@ -127,9 +127,18 @@ def commit_changes(new_versions): else: commit_message = "Update Spotify versions" - # Создаем коммит и отправляем изменения + # Создаем коммит subprocess.run(["git", "commit", "-m", commit_message]) - subprocess.run(["git", "push"]) + + if github_actions: + token = get_github_token() + if token: + repo_url = f"https://{token}@github.com/{os.environ.get('GITHUB_REPOSITORY')}.git" + subprocess.run(["git", "push", repo_url, "HEAD:main"]) + else: + subprocess.run(["git", "push"]) + else: + subprocess.run(["git", "push"]) print("Изменения успешно отправлены в репозиторий.") return True