upload-files

This commit is contained in:
nora 2025-08-02 17:25:18 +02:00
parent 4f1201741a
commit fe50a9f715
31 changed files with 68 additions and 37 deletions

View file

@ -0,0 +1,19 @@
{ upload-files, pkgs, lib, config, ... }: {
age.secrets.upload_files_s3_secret.file = ../../secrets/upload_files_s3_secret.age;
systemd.services.upload-files = {
description = "upload.files.noratrieb.dev file uploader for files.noratrieb.dev";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
environment = {
UPLOAD_FILES_NORATRIEB_DEV_BUCKET = "files.noratrieb.dev";
UPLOAD_FILES_NORATRIEB_DEV_ENDPOINT = "http://localhost:3900";
UPLOAD_FILES_NORATRIEB_DEV_REGION = "garage";
};
serviceConfig = {
DynamicUser = true;
ExecStart = "${lib.getExe (upload-files {inherit pkgs;})}";
EnvironmentFile = [ config.age.secrets.upload_files_s3_secret.path ];
};
};
}

View file

@ -20,6 +20,7 @@
pretense = import (fetchTarball "https://github.com/Noratrieb/pretense/archive/${my-projects-versions.pretense}.tar.gz");
quotdd = import (fetchTarball "https://github.com/Noratrieb/quotdd/archive/${my-projects-versions.quotdd}.tar.gz");
does-it-build = import (fetchTarball "https://github.com/Noratrieb/does-it-build/archive/${my-projects-versions.does-it-build}.tar.gz");
upload-files = import (fetchTarball "https://github.com/Noratrieb/upload.files.noratrieb.dev/archive/${my-projects-versions."upload.files.noratrieb.dev"}.tar.gz");
inherit my-projects-versions;
@ -183,6 +184,7 @@
./apps/killua
./apps/forgejo
./apps/openolat
./apps/upload-files
];
deployment.tags = [ "caddy" "eu" "apps" "website" ];

View file

@ -52,6 +52,12 @@ olat.noratrieb.dev:8088 {
reverse_proxy * localhost:5011
}
upload.files.noratrieb.dev {
log
encode zstd gzip
reverse_proxy * localhost:3050
}
################################################################
# redirects

View file

@ -57,7 +57,11 @@ let
# --- website stuff
blog = vps1;
www = vps1;
files = combine [ vps1 vps3 vps4 ];
files = combine [ vps1 vps3 vps4 ] // {
subdomains = {
upload = vps1;
};
};
# --- legacy crap
old-docker = vps2;

View file

@ -25,6 +25,8 @@
- key `backups` RW
- `forgejo`
- key `forgejo` RW
- `files.noratrieb.dev`
- key `upload-files` RW
## keys

View file

@ -4,5 +4,6 @@
"slides": "0401f35c22b124b69447655f0c537badae9e223c",
"pretense": "270b01fc1118dfd713c1c41530d1a7d98f04527d",
"quotdd": "e922229e1d9e055be35dabd112bafc87a0686548",
"does-it-build": "81790825173d87f89656f66f12a123bc99e2f6f1"
"does-it-build": "81790825173d87f89656f66f12a123bc99e2f6f1",
"upload.files.noratrieb.dev": "84ae7746fd554b18351d377aab8ea6739493d156"
}

View file

@ -1,7 +1,5 @@
age-encryption.org/v1
-> ssh-ed25519 qM6TYg +BQUq++K4fbTXFQXdZwoVKaeRY75C96A1vnn5gUo5WY
jxUb+nX0t0OIhJxgdaOwTvviVnGoPlAKcmXIRW7FhEM
--- plPYamLI4c2gzNcPkNeEdh68k3i3STrazb5sTG7txUY
Ň GAv°ť(îĚ
\ 9N
ŻťwJŮ`Yüé.ö˘´Ăxâ.líî„q… 9޵„3
-> ssh-ed25519 qM6TYg QziuzHQxmWyRdv8dUPBWTgnMxFtqR6ttP16Z3XdvD3Y
Krxmha5J+gTU0DjzPDTDIwz1mW0Q84XR2FgQyPm4bf4
--- t4Mea1Y35o5t2dhREnp8Zq1AyR4DAWMFW7Vv3CkgGKw
ìlTS+Ƴ6y­¿rîëOØné<6E>&c`Ï°Ê ü<>:û³7V»-tf±puw€I¥w“Âøå

View file

@ -1,12 +1,12 @@
age-encryption.org/v1
-> ssh-ed25519 qM6TYg dSNo/WHtuVibuLghfNnznYw6+zsMJOWvi7LitHSn3AY
pfZti2of1OZVOgVR+wXZrhGggtZ2W3jyUADDWVxQHfs
-> ssh-ed25519 XzACZQ d5+ZaKmyb1yTZJ0mvPYl6On9XaOp8Z59zNQXVtEj6F8
+Ku4GwagVLPZHzOpkaFPZ1i5NoB9Z+Eyd0tuY28yS5Y
-> ssh-ed25519 51bcvA PxNLpJLMnUrlyzKUairI6Y+f6BYn7N9e/OURoiHcWQk
FsXdpP0pM+Xvst93kHIG+KsDlwrRRks4jxl+Q487Msc
-> ssh-ed25519 vT7ExA PE9zzE4bKcexXg6LuoQnUOJbvNlqQF//qm1fgB6sM0M
YSzgtZ+zGoTljLHrxeIY7MQV7xmLNDPFEeVrSq37QHA
--- VGV6MkGwLwYmCq73bDzIJaRRTESJ9a1fieP1AJNiAUs
j\ËČ_I9Îd±UK÷ Ë ďF1<08>ođ±uŔÍJŰŰo
<EFBFBD>ąŁ ÄÉP"šltÖ±v%čőÚan«©EëZX2ש«S;¤’ JĄ$~žjcgŠ\«~5$Ö„ü*Ď ]§"˛·« Ů ţńjS˛+qΗ@w編˚Ą‡ô<C381>ż1€F@ľ’k©•×$_ýÂ…;Z öX‡LżKhˇ0Ŕó 6®±ěż"Ń<Ů‘
-> ssh-ed25519 qM6TYg B17o68OCsoljQLd4yLx1gZbt9zsFhQE8/QJeZ3Gx+AI
ADxN8iqNN5ApzHMtIXMnMTN4qe/7ba+ZoqkpHDpq9dE
-> ssh-ed25519 XzACZQ Jp5WvbUVmfecvN95vM6+DQmJicVf4u94Vm0mYtBVODw
XAdVpk6bAwAU7OQxvedepr3g8HQo5sY5efy3lYhf1xA
-> ssh-ed25519 51bcvA DUkgjLS805iAsnaCl3B8BOP6cdKOJCx0aK23UEDmTyw
dUZhXJiYkCZvassxSg0Cgf9c+ta2Oc2PNhLdvHBP24M
-> ssh-ed25519 vT7ExA 0Z2/GFY2aqO2HJJet3CRSh3yxchGt7AYTzkl0D2aoEQ
GuMqW7tbsEl/SskgN1hPa0B/aWtet/+pHxmbwsTzPCM
--- vgf72fLRkTVRtJoxh+qfim9YYELE0W74L6ZVjpo+8vI
åø=ê&óŸC»íÄŸŸ#À¥ÑÒ/nܤè´2Â9†ØÞøo[<5B>S+ uWʶ¢£4êÕf/hAÈþ#ïþOs_†RV£òEÆÆóÎûúÎVAlžTÏ/¤VΨtµøJNöËUë;ññnGúQïìÝ£ÖO{Áx[ ¿†íÏP¨Hß9P®:z
ê‰û²åyX„Ñ`]%>¨+ÙÞ~)Ø`VïâxÛ°€i-ƒã¬Fýªš$xHå)ÒTMcZ

Binary file not shown.

Binary file not shown.

View file

@ -23,6 +23,7 @@ in
"s3_mc_admin_client.age".publicKeys = [ vps1 vps3 vps4 vps5 ];
"killua_env.age".publicKeys = [ vps1 ];
"forgejo_s3_key_secret.age".publicKeys = [ vps1 ];
"upload_files_s3_secret.age".publicKeys = [ vps1 ];
"wg_private_dns1.age".publicKeys = [ dns1 ];
"wg_private_dns2.age".publicKeys = [ dns2 ];
"wg_private_vps1.age".publicKeys = [ vps1 ];

Binary file not shown.

View file

@ -1,6 +1,5 @@
age-encryption.org/v1
-> ssh-ed25519 qM6TYg vC8XBZQGff/q/SEsiIb+pyhfE/2MCWbo1m+suXpzyhY
r2R02FSzrpiPyoAeiPqWNdXc0Jqd6v2rv4hxo89LqD8
--- NBCfTZYGNmAHQOABVhlcsgbJmKpmeUM15FdKLQjVazw
,t¬}˜ <20>¨¾“­| &¦“-À^uüÊU6Z_ì&Ú—Úuôe[wá—™–Ó _ë²¢°
£^£®\Ý(뜆gPy-jéš;ýùD
-> ssh-ed25519 qM6TYg 4aRY2+KMkGoSJtRfdkTRwIj6bYGSQJvJjq669297MHE
Kjf7jo93e4oMRKmN5u3Xa3CUpIp9bZPoUAGqjdgOulw
--- wapYiQbpT4gfZyI5cMnB4O+LdM9PvsUxM7nTv954nNg
õš<EFBFBD>ê÷¤eVn?Õ]¥ÁÁøÅ<C3B8>—3!l0•„†<E2809E>ÑâØ±°ñó«ëõó<¡ [œƒŸo¯¶ø[?Ý®ä<C2AE>¬í·¦ÓB'ìWò—(‡•

View file

@ -1,5 +1,5 @@
age-encryption.org/v1
-> ssh-ed25519 XzACZQ FnGfRDdT9kQXeYzv7yzwI+1fVXmeseC6YVCCzeoeLCQ
HydL6WRBzLmqAKNmf0kzBmZiFRQ8KM3dHEdx2676Nx0
--- E7+8BYiNPPm3fI6FiEii2txlbsesfSXuE2Nxvb7Zlx4
™m»5q®÷ÞÁ~ú>R-­¡<C2AD>·ôeŒ~ÿ+$¦˜•TÌ5öPäõr´nH:$4ðj¦kþB÷$CqRuóïˆM˜mªF`þA4<41>·Ñe
-> ssh-ed25519 XzACZQ J67LUjHa64q/z1K8zZpx1rsnoQ94NzhkeXEpfNr4ZVQ
dy5Tre9IicxhLBHoqvQAZepG7bNg2dEXFT5iPRcWOcA
--- 9dJKhJeue6VNi0Sw05BX/t8jsxXyRIKz0K3/sy0kT7w
Ýh9ÎÛËi£·ÀÍs¡ØâM =TnÕw€W)<29>õ€Ûòêã²îÃ\ÇÕ<2*%æ_ëå×ܳ¿«ôgÇLñõN5c—D5ô@áÍ»ÂØ

View file

@ -1,5 +1,5 @@
age-encryption.org/v1
-> ssh-ed25519 51bcvA IVcXj0PQpO6Rj7ovi4GgoQF77sRDdumHNavSVdQXcHI
O7j/05HqbjLvIYh9cT/iT8p6GMDn14vDOqU3Jh6tUIc
--- wt0viOUTFWu9ze3CcQ4i1xMrb+RLTOg2hcVsDwbzMzA
Çâ<C387>iÍ-_ñŒrË£Æ*=Öî@Ÿ“|D3éÕeå%ö´näÈ­YÈò'í×Rаh3î‡VËü%-=¡à¾W¸Óî; ¼icS
-> ssh-ed25519 51bcvA P7ouUh98Mfi9Jsu6MDWaWH0NB2alXRIK8hxBIs0Nylg
tUZ1sWLlvPizsSWhK3fnVVhr4C9Ign5rwowxePGXFII
--- PHPizXT8GPP9mIFg1paqqc8w3qsX63XpLkeT0APybik
´B§?*8-nËLsÍj< k*.@¯ªœé6K‡Ug ×'8¼ Ñ#Žòíhç.l~Sà3£%¶šÀ!ŸVYK•l¿R¾ ´Ôؘo

View file

@ -1,6 +1,5 @@
age-encryption.org/v1
-> ssh-ed25519 vT7ExA kxCR8CbPH5GgSS/ENXQ81zPQ+n041l7yV6zzQv1smwk
mhn18RlBXbpMfZAHrUam5ktlV5Z28UIg8Ufk4H/tfSA
--- WXmrUK2YnQQqZQgoW219LEVgBoHa+N3NqO4cqsF9Pr8
Ê>•0…:üh`´µÈ;¹D +
æü쎽Å*TYÔüDà 9/<2F>9:Lw“ëQ÷çàNð߯C³x'QHdÞcM<63>Ï£ú½úÄ8“à
-> ssh-ed25519 vT7ExA 9+j3VYkFAW1obbLc31nv+45SyPMqH1zZPkI+PU4lVH8
G9QkkyTNH499EWhjiXCyXt7HgHlzJTZsaLiR+yOF18E
--- vq7bT3yTioJ1UsD7hSu5jyYKhOE6UMIMsosu4f5pK1w
Q±<>žž¹ýÁ˜ÅVÐé#<23>(7èýÎEYÉÛÅÌ\ú££Z¨?GÙ«ç_C ÛI¦î ЉgNi´V¯åe]•¢tx@¸w+

Binary file not shown.