|
|
|
@ -9,6 +9,7 @@ import path from "path";
|
|
|
|
|
import sendRanges, {SendRangeGetStreamFn} from "send-ranges"; |
|
|
|
|
import mime from "mime"; |
|
|
|
|
import {logger} from "swaf/Logger"; |
|
|
|
|
import {ParsedUrlQueryInput} from "querystring"; |
|
|
|
|
|
|
|
|
|
export const ASSETS_BASE_DIR = config.get<string>('assets_base_dir'); |
|
|
|
|
|
|
|
|
@ -22,6 +23,14 @@ export default class GiteaRepoLatestReleaseController extends Controller {
|
|
|
|
|
const {owner, name, file} = req.params; |
|
|
|
|
if (!owner || !name) return next(); |
|
|
|
|
|
|
|
|
|
// User redirections
|
|
|
|
|
const userRedirections = config.get<{ from: string, to: string }[]>('user_redirections'); |
|
|
|
|
for (const redirection of userRedirections) { |
|
|
|
|
if (owner === redirection.from) { |
|
|
|
|
return res.redirect(Controller.route('get-repo-release-file', [redirection.to, name, file], req.query as ParsedUrlQueryInput)); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
const httpRequest = https.get(`${config.get('gitea_instance_url')}/api/v1/repos/${owner}/${name}/releases`, { |
|
|
|
|
headers: { |
|
|
|
|
'Accept': 'application/json', |
|
|
|
|