diff --git a/app/services/gitea/repository/sync_mirrored_service.rb b/app/services/gitea/repository/sync_mirrored_service.rb new file mode 100644 index 000000000..6918a6ec2 --- /dev/null +++ b/app/services/gitea/repository/sync_mirrored_service.rb @@ -0,0 +1,30 @@ +# Sync a mirrored repository +class Gitea::Repository::SyncMirroredService < Gitea::ClientService + attr_reader :token, :owner, :repo + + # owner * + # owner of the repo to sync + # repo * + # name of the repo to sync + # example: + # Gitea::Repository::SyncMirroredService.new(owner.login, repo.identifier, user.gitea_token).call + def initialize(owner, repo, token=nil) + @token = token + @owner = owner + @repo = repo + end + + def call + post(url, request_params) + end + + private + + def request_params + Hash.new.merge(token: token) + end + + def url + "/repos/#{owner}/#{repo}/mirror-sync".freeze + end +end