Simple Python Script To Auto Trigger Gitea Mirror Using Github Action
Go to file
Varun Sridharan d921c39b97
Updated
2021-04-30 06:45:34 +05:30
.github Added Release Tweet 2020-10-17 07:13:38 +05:30
action.yml Added Default Values. 2020-10-26 08:21:59 +05:30
CHANGELOG.md Updated 2021-04-30 06:45:34 +05:30
Dockerfile Install 1.54.1 PyGithub Only 2021-04-30 06:33:27 +05:30
entrypoint.sh Removed ./mirror-handler/ 2020-10-26 11:24:26 +05:30
LICENSE Initial commit 2020-10-16 19:41:10 +05:30
README.md V 1.4 Ready 2021-04-30 06:42:03 +05:30

Gitea Mirror - Github Action

This Action uses Github > Gitea Mirror Script. And The Arguments supported by that script is supported here to

Requirements

  • Self / Cloud Hosted Gitea Instance
  • Github Personal Access Token
  • Gitea Personal Access Token

Github Access Token Scopes

  • if you want to mirror private repos then select everything under Repo scope
  • if you want to mirror public repos then select repo.public_repo scope
  • if you want to mirror secret Gists then select gist scope

Why Github Action ? Can't This Script Run Inside Selfhosted Instance ?

Yes this script Github > Gitea Mirror Can be ran inside the selfhosted instance. but i created this action for few reasons

  • This action can be used for ppl how are not tech savvy
  • Personally i wanted to remove resource used by Github > Gitea Mirror Script
  • I think that there are some advantages when calling GithubAPI Inside an Github Action

⚙️ Configuration

Option Description
github.username Your Github Username
github.accesstoken Your Github Account's Personal Access Token
- -
gitea.host Selfhosted Gitea URL without / at the end
gitea.accesstoken Your Personal Access Token
gitea.username Account User Name
gitea.gist.prefix Custom Prefix For Repository When Mirroring Gists
gitea.gist.surfix Custom Prefix For Repository When Mirroring Gists
- -
repomap Remap A Repository To Diff User
gistsSource set to true to mirror all Gists Created By You
gistsStared set to true to mirror all Gists Stared By You
repositoryStared set to true to mirror all Repository Stared By You
repositorySource set to true to mirror all Repository Created By You
repositoryForked set to true to mirror all Repository Forked By You

Example Workflow File

Below workflow file triggers when anything is pushed to main branch or runs every Day or can be triggered manually Please do make sure to setup the Secrets

name: " ⏳  Gitea Mirror Setup"

on:
  workflow_dispatch:
 
  schedule:
    - cron: 0 0 * * *
  
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: varunsridharan/action-gitea-mirror@main
        name: " ⏳ Setting Up Mirror"
        with:
          gh_username: ${{ secrets.GH_USERNAME }}
          gh_accesstoken: ${{ secrets.GH_TOKEN }}
          gitea_host: ${{ secrets.GITEA_HOST }}
          gitea_username: ${{ secrets.GITEA_USERNAME }}
          gitea_accesstoken: ${{ secrets.GITEA_TOKEN }}
          gitea_gist_prefix: "gist"
          gitea_gist_surfix: ""
          gistsSource: true
          gistsStared: true
          repositoryStared: true
          repositorySource: true
          repositoryForked: true