mirror of
https://github.com/TecharoHQ/anubis.git
synced 2026-04-21 15:46:41 +00:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 90a914ff26 | |||
| fd011d19e2 | |||
| 489abb6b4d | |||
| 8da0771647 |
@@ -14,6 +14,7 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
test:
|
test:
|
||||||
|
- forced-language
|
||||||
- git-clone
|
- git-clone
|
||||||
- git-push
|
- git-push
|
||||||
- healthcheck
|
- healthcheck
|
||||||
|
|||||||
@@ -36,12 +36,12 @@
|
|||||||
"invalid_redirect": "Netinkamas nukreipimas",
|
"invalid_redirect": "Netinkamas nukreipimas",
|
||||||
"redirect_not_parseable": "Nukreipimo adreso nepavyko išanalizuoti",
|
"redirect_not_parseable": "Nukreipimo adreso nepavyko išanalizuoti",
|
||||||
"redirect_domain_not_allowed": "Nukreipimo domenas neleistinas",
|
"redirect_domain_not_allowed": "Nukreipimo domenas neleistinas",
|
||||||
"missing_required_forwarded_headers": "Trūksta būtinų X-Forwarded-* antraščių",
|
"missing_required_forwarded_headers": "Trūksta būtinų „X-Forwarded-*“ antraščių",
|
||||||
"failed_to_sign_jwt": "nepavyko pasirašyti JWT",
|
"failed_to_sign_jwt": "nepavyko pasirašyti JWT",
|
||||||
"invalid_invocation": "Netinkamas kreipinys į „MakeChallenge“",
|
"invalid_invocation": "Netinkamas kreipinys į „MakeChallenge“",
|
||||||
"client_error_browser": "Kliento klaida: įsitikinkite, jog jūsų naršyklė pakankamai atšviežinta ir bandykite dar kartą.",
|
"client_error_browser": "Problema klientinėje dalyje: įsitikinkite, jog jūsų naršyklė nepasenusi ir bandykite dar kartą.",
|
||||||
"oh_noes": "O, ne!",
|
"oh_noes": "O, ne!",
|
||||||
"benchmarking_anubis": "„Anubis“ vertina!",
|
"benchmarking_anubis": "Vertinama „Anubis“ sparta!",
|
||||||
"you_are_not_a_bot": "Jūs nesate robotas!",
|
"you_are_not_a_bot": "Jūs nesate robotas!",
|
||||||
"making_sure_not_bot": "Stengiamasi užtikrinti, jog jūs nesate robotas!",
|
"making_sure_not_bot": "Stengiamasi užtikrinti, jog jūs nesate robotas!",
|
||||||
"celphase": "CELPHASE",
|
"celphase": "CELPHASE",
|
||||||
@@ -63,4 +63,4 @@
|
|||||||
"js_finished_reading": "Viską perskaičiau, tęskime →",
|
"js_finished_reading": "Viską perskaičiau, tęskime →",
|
||||||
"js_calculation_error": "Skaičiavimo klaida!",
|
"js_calculation_error": "Skaičiavimo klaida!",
|
||||||
"js_calculation_error_msg": "Nepavyko įveikti iššūkio:"
|
"js_calculation_error_msg": "Nepavyko įveikti iššūkio:"
|
||||||
}
|
}
|
||||||
|
|||||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "@techaro/anubis",
|
"name": "@techaro/anubis",
|
||||||
"version": "1.22.0-pre1",
|
"version": "1.22.0-pre2",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "@techaro/anubis",
|
"name": "@techaro/anubis",
|
||||||
"version": "1.22.0-pre1",
|
"version": "1.22.0-pre2",
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@aws-crypto/sha256-js": "^5.2.0",
|
"@aws-crypto/sha256-js": "^5.2.0",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@techaro/anubis",
|
"name": "@techaro/anubis",
|
||||||
"version": "1.22.0-pre1",
|
"version": "1.22.0-pre2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
bots:
|
||||||
|
- name: challenge
|
||||||
|
user_agent_regex: CHALLENGE
|
||||||
|
action: CHALLENGE
|
||||||
|
|
||||||
|
status_codes:
|
||||||
|
CHALLENGE: 200
|
||||||
|
DENY: 403
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
async function getChallengePage() {
|
||||||
|
return fetch("http://localhost:8923/reqmeta", {
|
||||||
|
headers: {
|
||||||
|
"Accept-Language": "en",
|
||||||
|
"User-Agent": "CHALLENGE",
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.then(resp => {
|
||||||
|
if (resp.status !== 200) {
|
||||||
|
throw new Error(`wanted status 200, got status: ${resp.status}`);
|
||||||
|
}
|
||||||
|
return resp;
|
||||||
|
})
|
||||||
|
.then(resp => resp.text());
|
||||||
|
}
|
||||||
|
|
||||||
|
(async () => {
|
||||||
|
const page = await getChallengePage();
|
||||||
|
|
||||||
|
if (!page.includes(`<html lang="de">`)) {
|
||||||
|
console.log(page)
|
||||||
|
throw new Error("force language smoke test failed");
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log("FORCED_LANGUAGE=de caused a page to be rendered in german");
|
||||||
|
process.exit(0);
|
||||||
|
})();
|
||||||
Executable
+23
@@ -0,0 +1,23 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
function cleanup() {
|
||||||
|
pkill -P $$
|
||||||
|
}
|
||||||
|
|
||||||
|
trap cleanup EXIT SIGINT
|
||||||
|
|
||||||
|
# Build static assets
|
||||||
|
(cd ../.. && npm ci && npm run assets)
|
||||||
|
|
||||||
|
go tool anubis --help 2>/dev/null ||:
|
||||||
|
|
||||||
|
go run ../cmd/unixhttpd &
|
||||||
|
|
||||||
|
FORCED_LANGUAGE=de go tool anubis \
|
||||||
|
--policy-fname ./anubis.yaml \
|
||||||
|
--use-remote-address \
|
||||||
|
--target=unix://$(pwd)/unixhttpd.sock &
|
||||||
|
|
||||||
|
backoff-retry node ./test.mjs
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
*
|
||||||
|
!.gitignore
|
||||||
Reference in New Issue
Block a user