aboutsummaryrefslogtreecommitdiff
path: root/src/routes.ts
diff options
context:
space:
mode:
authorKevin J Hoerr <kjhoerr@protonmail.com>2022-04-04 01:13:14 +0000
committerKevin J Hoerr <kjhoerr@protonmail.com>2022-04-04 01:13:14 +0000
commita87eb1608d354a6e9c8170e0fdc432a5f556c445 (patch)
treea36a9342bd53ce3c8df3885cc342f3b6d5f16aa4 /src/routes.ts
parentaa045248645094e77d529bd6d048ff83619c352e (diff)
downloadao-coverage-a87eb1608d354a6e9c8170e0fdc432a5f556c445.tar.gz
ao-coverage-a87eb1608d354a6e9c8170e0fdc432a5f556c445.tar.bz2
ao-coverage-a87eb1608d354a6e9c8170e0fdc432a5f556c445.zip
Refactor dependency on env and add comments
Diffstat (limited to 'src/routes.ts')
-rw-r--r--src/routes.ts18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/routes.ts b/src/routes.ts
index a8360ca..0998345 100644
--- a/src/routes.ts
+++ b/src/routes.ts
@@ -9,11 +9,16 @@ import Metadata, { HeadIdentity, isError } from "./metadata";
import loggerConfig from "./util/logger";
import { InvalidReportDocumentError, Messages } from "./errors";
-const logger = winston.createLogger(loggerConfig("HTTP"));
-
-export default (metadata: Metadata): Router => {
+/**
+ * Provide routes from application state
+ */
+const routes = (metadata: Metadata): Router => {
const router = Router();
+ const logger = winston.createLogger(loggerConfig("HTTP", metadata.logger.level));
+ /**
+ * Persist uploaded coverage report and creates coverage badge
+ */
const commitFormatDocs = async (
contents: string,
identity: HeadIdentity,
@@ -138,6 +143,9 @@ export default (metadata: Metadata): Router => {
});
});
+ /**
+ * Read a file from the host directory.
+ */
const retrieveFile = (
res: express.Response,
identity: HeadIdentity,
@@ -238,6 +246,7 @@ export default (metadata: Metadata): Router => {
retrieveFile(res, identity, format.fileName);
});
+ // provide hard link for commit
router.get("/v1/:org/:repo/:branch/:commit.xml", (req, res) => {
const { org, repo, branch, commit } = req.params;
const format = formats.formats.cobertura;
@@ -250,6 +259,7 @@ export default (metadata: Metadata): Router => {
retrieveFile(res, identity, format.fileName);
});
+ // return 404 for all other routes
router.use((_, res) => {
res.status(404);
res.sendFile(path.join(metadata.getPublicDir(), "static", "404.html"));
@@ -257,3 +267,5 @@ export default (metadata: Metadata): Router => {
return router;
};
+
+export default routes;