forked from fediversity/fediversity
Compare commits
16 commits
f50ee049f2
...
3e2c83435d
| Author | SHA1 | Date | |
|---|---|---|---|
| 3e2c83435d | |||
| e3a7cdde96 | |||
| 6275e8b2dc | |||
| 8fbe59af55 | |||
| 0bd65f1ed5 | |||
| fbd1f2f576 | |||
| 29f841d1db | |||
| b0a8690511 | |||
| 7b77e2ad72 | |||
| 4987e9f530 | |||
| f39f5d295a | |||
| 7b6e8fa9ba | |||
| 3b6fcc2878 | |||
| bc670296d7 | |||
| 9c40fd0bfb | |||
| 98c4490b4e |
15 changed files with 136 additions and 74 deletions
|
|
@ -58,7 +58,10 @@
|
|||
packages = [
|
||||
pkgs.nil
|
||||
inputs'.agenix.packages.default
|
||||
inputs'.nixops4.packages.default
|
||||
(inputs'.nixops4.packages.default.overrideAttrs {
|
||||
impureEnvVars = [ "DEPLOYMENT" ];
|
||||
})
|
||||
pkgs.openssh
|
||||
pkgs.httpie
|
||||
pkgs.jq
|
||||
];
|
||||
|
|
|
|||
|
|
@ -143,7 +143,17 @@ in
|
|||
## - We add a “test” deployment with all test machines.
|
||||
nixops4Deployments = genAttrs machines makeDeployment' // {
|
||||
default = makeDeployment machines;
|
||||
test = makeTestDeployment (fromJSON (readFile ./test-machines/configuration.json));
|
||||
test = makeTestDeployment (
|
||||
fromJSON (
|
||||
let
|
||||
env = builtins.getEnv "DEPLOYMENT";
|
||||
in
|
||||
if env != "" then
|
||||
env
|
||||
else
|
||||
builtins.trace "env var DEPLOYMENT not set, falling back to ./test-machines/configuration.json!" (readFile ./test-machines/configuration.json)
|
||||
)
|
||||
);
|
||||
};
|
||||
flake.nixosConfigurations =
|
||||
genAttrs machines (makeConfiguration false)
|
||||
|
|
|
|||
|
|
@ -1,17 +1,25 @@
|
|||
{
|
||||
inputs,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
name = "panel";
|
||||
panel = (import ../../../panel/default.nix { }).package;
|
||||
in
|
||||
# builtins.trace args.pkgs
|
||||
{
|
||||
imports = [
|
||||
../../../panel/nix/configuration.nix
|
||||
];
|
||||
|
||||
nix.settings = {
|
||||
extra-experimental-features = "configurable-impure-env";
|
||||
};
|
||||
|
||||
environment.systemPackages = [
|
||||
inputs.self.outPath
|
||||
panel
|
||||
];
|
||||
|
||||
|
|
@ -36,4 +44,8 @@ in
|
|||
STATIC_ROOT = "/var/lib/${name}/static";
|
||||
};
|
||||
};
|
||||
systemd.services.${name}.environment = {
|
||||
REPO_DIR = inputs.self.outPath;
|
||||
NIX_DIR = pkgs.nix;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILhSlUo7L/TjoAILfLv/BDxlBT+rGudh9VoK50Uiu2lZ root@fedi201
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKBpnV6zzgdJN5pjw2oWryneE6kZ5rQ343Ut4ed12Cm9 root@fedi201
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ in
|
|||
export CREDENTIALS_DIRECTORY=${builtins.toString ./.credentials}
|
||||
export DATABASE_URL="sqlite:///${toString ./src}/db.sqlite3"
|
||||
'';
|
||||
NIX_DIR = pkgs.nix;
|
||||
};
|
||||
|
||||
tests = pkgs'.callPackage ./nix/tests.nix { };
|
||||
|
|
|
|||
|
|
@ -39,11 +39,11 @@ class Configuration(BaseModel):
|
|||
# XXX: hard-code available apex domains for now,
|
||||
# they will be prefixed by the user name
|
||||
class Domain(Enum):
|
||||
EU = "fediversity.eu"
|
||||
# EU = "fediversity.eu"
|
||||
NET = "fediversity.net"
|
||||
|
||||
domain: Domain = Field(
|
||||
default=Domain.EU,
|
||||
default=Domain.NET,
|
||||
description="DNS domain where to expose services"
|
||||
)
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
{{ form.as_p }}
|
||||
|
||||
<button class="button" disabled>Deploy</button>
|
||||
<button class="button" type="submit" >Save</button>
|
||||
<button class="button" type="submit" name="deploy">Deploy</button>
|
||||
<button class="button" type="submit" name="save">Save</button>
|
||||
</form>
|
||||
{% endblock %}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,10 @@
|
|||
from enum import Enum
|
||||
import os
|
||||
import json
|
||||
|
||||
from django.urls import reverse_lazy
|
||||
import os
|
||||
import subprocess
|
||||
from django.contrib.auth.mixins import LoginRequiredMixin
|
||||
from django.contrib.auth.models import User
|
||||
from django.views.generic import TemplateView, DetailView
|
||||
|
|
@ -10,6 +14,7 @@ from panel import models
|
|||
from panel.configuration import forms
|
||||
|
||||
|
||||
|
||||
class Index(TemplateView):
|
||||
template_name = 'index.html'
|
||||
|
||||
|
|
@ -41,6 +46,39 @@ class ConfigurationForm(LoginRequiredMixin, FormView):
|
|||
operator=self.request.user,
|
||||
)
|
||||
|
||||
# Check for deploy button
|
||||
if "deploy" in self.request.POST.keys():
|
||||
print("DEPLOYING:")
|
||||
print(os.getenv("REPO_DIR"))
|
||||
print(os.getenv("NIX_DIR"))
|
||||
submission = obj.parsed_value.model_dump_json()
|
||||
deployment = json.dumps(json.loads(submission) | {
|
||||
"initialUser": {
|
||||
"displayName": "Testy McTestface",
|
||||
"username": "test",
|
||||
"password": "testtest",
|
||||
"email": "test@test.com",
|
||||
},
|
||||
})
|
||||
env = {
|
||||
"DEPLOYMENT": deployment,
|
||||
"PATH": f"{os.getenv("NIX_DIR")}/bin/",
|
||||
}
|
||||
print(f"env: {env}")
|
||||
print(f"Path: {os.getcwd()}/..")
|
||||
cmd = [
|
||||
"nix",
|
||||
"develop",
|
||||
"--extra-experimental-features",
|
||||
"configurable-impure-env",
|
||||
"--command",
|
||||
"nixops4",
|
||||
"--show-trace",
|
||||
"--verbose",
|
||||
"apply",
|
||||
"test",
|
||||
]
|
||||
subprocess.run(cmd, cwd=os.getenv("REPO_DIR") or f"{os.getcwd()}/..", env=env)
|
||||
return obj
|
||||
|
||||
# TODO(@fricklerhandwerk):
|
||||
|
|
|
|||
|
|
@ -1,18 +1,17 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 Jpc21A aY4iHQUrjmuTgBkIwG3vg8XBK458PWXpiZ5E/m/UHnU
|
||||
VCuYTllN1tW5RzIigPiN+p/W5uI3Urh0J3IpLXDL1H4
|
||||
-> ssh-ed25519 BAs8QA pP6PTq+vp+fP1oOv3ep4dWspwANxj9DSS94t0a+1Q1o
|
||||
tpqUnXqp/wmfXFMe2iXRRda+JmW5ZgypduKOS8meCJw
|
||||
-> ssh-ed25519 ofQnlg om0geQk3YR3+WXsPdIC46wL02M57Qror6MD/PynrTAs
|
||||
Yj5xcXf203kW70SndVBBagh62yAn0T41lzg3ReD1kEs
|
||||
-> ssh-ed25519 COspvA bvBwdWb0kO89Myw3u2heNwd/4vN1+4tiWjNyoF3t+hM
|
||||
eCX26mAJy8stuYrRijqicgODAlyKt3zjeZchCkBpfOI
|
||||
-> ssh-ed25519 2XrTgw wQMvYCYmw4Iql/EmUSW5HG0fz4POn/VIZrMsL5vuUBc
|
||||
RaDLMF7OadInlWbQ70/5gpQ4tpwae8i74hu5Wftf6Yg
|
||||
-> ssh-ed25519 1MUEqQ ygipOVN6+Z09bfMZFdHRT8Wx+H4Ml0YM0w0vrUANugA
|
||||
XvtQMpD+iEpEKGwPVcq9mAftfaRlOJXTXUdcqyvVn9w
|
||||
-> ssh-ed25519 Fa25Dw qc7z4aL3dHjoOTdPBVm4q6V458BuTGLMekP5Hlk0bk0
|
||||
kZuabCaiH7DBhO8mDta8AXUxH65Cpm8u9P9ntw8A5pI
|
||||
--- zpGb6Td6MdLKxE3mkK1a7JqBH77th6045mcdGIsNth0
|
||||
ÿr*"DQÏÛ-©·í½`ÀU¯…µŠ`ËÒ¹Æu{<7B>ªC<C2AA>]‹GZ(p
|
||||
Ü×Uf‰
|
||||
-> ssh-ed25519 Jpc21A JzLWMEH98I5/A8O55mKUMy5zo2kg3Qk8SfXnHvkjwT4
|
||||
8f7zDHSp3AHoAQy0dVWMa1TurCBLnsHNtbNjaD++7ow
|
||||
-> ssh-ed25519 BAs8QA eCD3saYXdv1bjAoQghmyVqHjMBu/o2lWgu7grk1vgRs
|
||||
//pOnkzqQTK3xmeCjruo46ju2X136KEt6DpsegMouFQ
|
||||
-> ssh-ed25519 ofQnlg ePjq7GmM36qaGxcJ0qnW8FdKDjwlXtFqOBK8OgWY3Co
|
||||
gVmsDP9rMcQD/B6BpNhCn+avdgjhyyohNUXlatXpXo0
|
||||
-> ssh-ed25519 COspvA lrQB/NEmMUR2RWxfRzE2iTDkjMYsrIaiKn8thxZR+RA
|
||||
MU23Z28v+cNk2VxpAYaYoFb53js2Zr9/KAM9uMe6+EA
|
||||
-> ssh-ed25519 2XrTgw z1ixx5dYCNbgw6wWV45b4wn69X/5/4MzesTomWa4WB4
|
||||
eNSlP6+nUW9rpsGyzqOEQ+7IVpGeU3UcZpyfB9XT2/4
|
||||
-> ssh-ed25519 1MUEqQ c6ps9RB6Dw9JtR0+4eB1NDx44uUes8YjLrY7RCpD0jg
|
||||
GwVRqR5t07ctbWhwH76T+SAe2Y6Vv1uY/AHkzd/gw/c
|
||||
-> ssh-ed25519 Fa25Dw jTqtV2RWsXBH4zgWAYr9tBGC/BbXKBvr3uyL8IgmI1o
|
||||
qBirnzIpi9hB61xwyS+5U6XBobAquEJrV3cleDtG8/4
|
||||
--- j/vJgDV+47UmKokdvztXntBIhCLEyUm2aYoGJ2WMKbU
|
||||
¢¹ŽÀi‹±ËQõf §¥ÐÅ·DN§àB"—ÍvsëB6PùQžorF‡<46>Å
|
||||
|
|
@ -1,18 +1,17 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 Jpc21A ExqTXUYWuoVsdKwuWzCD72NctIpGvAF4QknTU04he2M
|
||||
rN48eYUwPJtTc/UBpB79FayC0W2UnrKdjFTdWKShtc0
|
||||
-> ssh-ed25519 BAs8QA xODgENkmP/KjT6IGiMW3cBkdrY+o5rbAGywY7Fx99EY
|
||||
DNAlVBdObTlgeVhKYtzPv46RCtn7zNm1aURWBOpBXEs
|
||||
-> ssh-ed25519 ofQnlg cEM500igumTfcCWWCH55z22Pp8QqLcqmjTD5e1lp1T0
|
||||
oKBWnaFpaFiEGf51fPqObAkRfRE4gywjQrYGB9kygUs
|
||||
-> ssh-ed25519 COspvA gQbazYgzv8oBeND0VtZ3P241kZM9klO2qysjkc20CFQ
|
||||
nW558CrEvtuUEpLo6EUeUTVK6EVUXbNZwP4+GLVVH3A
|
||||
-> ssh-ed25519 2XrTgw QlyQRFaRkniJ4BrJEVEP5muS+POPdKSmpS5u4ORiRTc
|
||||
/UeO72Y/U9aml3S2s9wE9HUIXPoR+6GDSXF+PT141Qg
|
||||
-> ssh-ed25519 1MUEqQ oMz1Cq68FuE1jm63H2Rfr/WqhkCeJ2SQrVtk88FBYGo
|
||||
ou2ZRPuGTlLxsV/DhXoRUhqaQq9Ub+1ZdOcqqazrBZM
|
||||
-> ssh-ed25519 Fa25Dw USp87LMAo6HfD6gHdA+lrRlwHzKtMwXGjELImsQ7onk
|
||||
g8GvPArugT7KIdpgpfWjHFUNyXgL9rRuymQg/RIiQJw
|
||||
--- 6oCFkdV4DmaxMe7lDoDSKgtCKySGqVqrbDv8aRa/h/o
|
||||
»W)Eí¨{ä™b¹žÑrÛ›¶
|
||||
à3OVx)ö¶QéȬ6‰b¶¶O·O¸Ü—ÇÈ‘%Ë
|
||||
-> ssh-ed25519 Jpc21A l6Xwv4JBlTeRTC7RgjxY9gDrCk96atMUH/62P+u55Qs
|
||||
CrYsLZgDFAiR8up87lhGZqsbAEZtOXG+l5IzLh2uaqg
|
||||
-> ssh-ed25519 BAs8QA lgtmfoc4vKfRpI/XbIS258BMyIB4mTdquEx/Kxm5OTI
|
||||
3gQL8Rnqc7JfqsRmKYU3rD0cWMKdnIeVXbY3eFM07RU
|
||||
-> ssh-ed25519 ofQnlg 0vwuCrduMLjssA3CK3gfVPMSPYKO9cF7HH1JF/oJv18
|
||||
2KrZgQmpvw/tNDJrDArinnbEjopkkmuG8s7t6klBXcQ
|
||||
-> ssh-ed25519 COspvA NT+/h2KsiZN2XbaWAlrTlDwyAPmHWrwgr6f0uhSbEGs
|
||||
QpoAd+69VYrZwAC0LwDm1m/zfslVgzxpVFihQWDcqzE
|
||||
-> ssh-ed25519 2XrTgw QoJ/74FOqYFxHJYXJEkyzbGY0xptSjorNvnyUS1p6zk
|
||||
0sJ2F6IFuTrRvXO5ND1QL4CZ2lr1BAU3iQffC6Uc3h4
|
||||
-> ssh-ed25519 1MUEqQ xxgEUIhvWN/ZfRMGfu3fKQ+fWM5WSz8OexXPm6jaXDk
|
||||
RXe0JMZ0sYMdQvrbi+zAs9F3d98ocRFnsSGUuUWccRk
|
||||
-> ssh-ed25519 Fa25Dw tw4sqQcO86Gh0FGUD+O3bJ+8OcaN5rm8R6qocXvDbRg
|
||||
7hiWa4qznHTV45kvC7ucj7j7FbPrqYK5OcCcByrcSxg
|
||||
--- kvZDYq5n/OXu7xe2Kf5vGN0zosl9fgH4CAf3K0Tq3U4
|
||||
¤D!´Ój]2ï‹ÝƒT+•
ÃUó¬æcgÝoP”‰ ˆF.Þ¿_vbÕÓÔdª9
|
||||
Binary file not shown.
|
|
@ -1,17 +1,17 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 Jpc21A jzJ5wTSLBsJ0DxelUDsT7BxM9qc73hPsCvB/1R3qGC4
|
||||
5giHjKIjnBVmn4NAtGLSIgKQGts9kOc+EPS6AKugn1s
|
||||
-> ssh-ed25519 BAs8QA J/y7P+A4z1iETfzta1UBf2AnKOD5lFTuGRo7EjWF4Qw
|
||||
zUBV+byTPL2kbKS6ZCbu8mk9Lp/fq1iF2Sii0XHxB5I
|
||||
-> ssh-ed25519 ofQnlg w1RFmJnfOSpKu9tiVvPy3WdLVGO1vUdPW1exb+M7xEM
|
||||
jk6/yzZMJCvzW1/5T+DKze+PxduLcWDrBGcVN6k5Vfo
|
||||
-> ssh-ed25519 COspvA DEBQL0y8GQpdib3WUkj1a/FVLVF8aMAZ77MdxLqJkVE
|
||||
V96fUeVJD3v2/V1H5GLo5YIKlIU7fuyYBr7F48gzJ60
|
||||
-> ssh-ed25519 2XrTgw ixdrdSfgH9Ch1Y4aflWP1QG6khhKN8mD1jFyOXhDTyA
|
||||
Kd8QfZ1IqWqiaAY4C8+J/AE6vqIRNAZtU6jbIjRYvCA
|
||||
-> ssh-ed25519 1MUEqQ Mwda57DHcYYsBJr0L6q9IcO4xyr6NvfTlXyRK/sfjWk
|
||||
WX2CsIJBJL1Q9ZMsLzLS2s2L1b+7Mm0WXF+PqRVh1p4
|
||||
-> ssh-ed25519 ChtTUw trZu9wftz3Hjd2xTKf8TYM9oLpNBcwQX47Pfi/cetjE
|
||||
5F1McxV1iLHyIVYdPDeR2twB5aq1fz9g/nrjAF5ys2w
|
||||
--- 7p/n8TyrrtmVay+dPSX+bdlEqzFByuWk/6FyKFKh758
|
||||
I€BãUÕ3M:ƶ,²<>‡¿?nª‹-{ü7Ðhý3²#7Œ§ãö'Ôg”~L&ƒ)˜=<3D>bB:9hËA¿TOSÄ
|
||||
-> ssh-ed25519 Jpc21A fBhVzGFs61K63QtA8RdOuuGfHFjMe/Dp0M6TXGLGWDU
|
||||
qppnUZ+LQCXhuMCFMYv2D2CkmEfjb7mpmJufIeVjjaM
|
||||
-> ssh-ed25519 BAs8QA PNicZCWLkbvM4ih77/F4z6FzHomL9EsJCuSCjbdRTwA
|
||||
qIpTl/v7Xl08qBB//dFeW9qQiZg10YrYLnfyQrgDRfQ
|
||||
-> ssh-ed25519 ofQnlg 9/vSN3V25ysXBOvS4UJQEzm0734zqO0gXjhgzX63tTs
|
||||
AH9Q1lWr+RgICfW3h+D2SgCTFr+azI0x3J3eFnaz/XA
|
||||
-> ssh-ed25519 COspvA IB1nWOMaVZVcvEog6UaqCak2fcKxIUN2yXvvRSTDxGw
|
||||
Ti7JuBgU6phlI+oXfDDvx42dRu95kTwesRUKu4QsXZ4
|
||||
-> ssh-ed25519 2XrTgw 7S9ZhJvUFMw9tDCc0HvkRsRqjvmn47GFGVg/jkxIy1I
|
||||
cj27gqqihSZG3Jcab9h9FyNJ1J8FjlUiyVlDot+sbWQ
|
||||
-> ssh-ed25519 1MUEqQ l9mVTLD9rZXisBEz0sU2AdFNrJQ/+zuFTiIod5R/HCI
|
||||
2q3csSEvMW5vtzqGHYTtZ1nZ0J1vT23bjhuj9HTsdWk
|
||||
-> ssh-ed25519 kXy85Q BCrDvkPZLvx2Kvgapa3BT+AmpS6Fa5kpkgBnRVso2BE
|
||||
ZBi+x/2ilJIzhzGipdZQJoGOjSqCuAttsqCDVFlYJ8Y
|
||||
--- iWtseKyfUMBkQTUl9QzwXXLQcodEJeZt1Wuj5sR18yY
|
||||
+2,エ ゚恝Jrメィ>ア<7F>z?ホi<EFBE8E><69>ェ<EFBFBD>x<EFBFBD>0z<30>ヤ智メ劬呱^ゥネコ食・濤礫+1」ァ<EFBDA3>
|
||||
|
|
@ -1,18 +1,18 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 Jpc21A vsNSibhHXdlRVArHkFqPy2vapvpo+lfs6QNESfZHk0c
|
||||
ArMZEQCONAIGQwyEh/QkJ3m5Bnru2/A1fQdJNtPraII
|
||||
-> ssh-ed25519 BAs8QA 7vfPIUymPXpfX7vhUyNVqBmTllXgJ99gCSHOgWH66HA
|
||||
gaueu0eHyqY+VAkNIzPb/aLQ1VG13kSpth2tJfhK7sU
|
||||
-> ssh-ed25519 ofQnlg iaJY3mcaKyLjTAqNVnzyivIVRwXxxFzP0ru35s/TU3Q
|
||||
mfKliFvPT+hEOpOPtkdR/UEmEadXZGpQ8+iWg+S/Q8c
|
||||
-> ssh-ed25519 COspvA +LC5rnZIS2R5DA3mIyeo2hR45mcBwNUjRS051qN+q2w
|
||||
yLYl5g8o29ApSCn+H4Df8P8y+eFv2Hbj6b/nHrzFMdA
|
||||
-> ssh-ed25519 2XrTgw dG9hmRFpaCBgaoHIkWmJM1Ls/mBqnV5gueGjCTEmRE0
|
||||
YkIQDWAwpr3pjjFozGEa3+4+WqJan0KQzUeYNxRjUPc
|
||||
-> ssh-ed25519 1MUEqQ 0Mtf2NGpVP3TYuFGrTPyQM+h6PjpgJNwW9amz1w7h0w
|
||||
J8RM+vl/e8JifUP3dqwH5L9AUqu24pALv6wqxaNhy3g
|
||||
-> ssh-ed25519 dgBsjw 9Y1n4J8E5T022V8QCApLykKoX56Zto8eLiy5KZvPuR4
|
||||
3piVQigR7rFry43YTTHmXkBSDIAFa/ife1Vuq6/3ubk
|
||||
--- 5Mr3Xe9RF1mneoWBno4SVkNqHx76EilFG0UvsHbqRQo
|
||||
çì&mu°.ÄåNêäã:%œ…<C593>žPî ]`L<<3C>Î ìÜñÅ]÷ÏÂe/T(s"a×Å<C397>™’½-ýû$M’A¿%LÄÉœv‘
|
||||
óm‹”‡@+9£¼¿÷%oa/¹K*³å&
|
||||
-> ssh-ed25519 Jpc21A BfHJN3vILbsfY91kEjSQ+STrn6vQfn83Fx3cBCNshRQ
|
||||
0O8GJYfF8WFS4Xsgj5v1cly4JP1MgSN40OgRdW/i0rA
|
||||
-> ssh-ed25519 BAs8QA Ue0NLMpmZDSTGvwZ8lhzes7pcmit9F6uwzeT4XhiwC0
|
||||
jsvvuOW344i8GR4B139SX0LwTqzKQEgBvsy8oRppqBU
|
||||
-> ssh-ed25519 ofQnlg 9iSMQeTJn1OUqTF+M2sHpp69lblb8E6TVbgZs7vgD2U
|
||||
uMQI1gTTMvYW7ea9xBAln118JEeNvv3nqbq32zJoat8
|
||||
-> ssh-ed25519 COspvA YxCyfe0li23JoI2q4XFVUx4vrWApLwSnJD31PHXuPBg
|
||||
8xuT9+W2mnTag9tm6F6LXzHkIh2Nou/8lgxd64OpvWk
|
||||
-> ssh-ed25519 2XrTgw jEzw0A9Wd1b1Zoryzp/W/QZ6bd99E7sySnr/W2xcnDs
|
||||
IyMrojJ3AChS6lhj599caNM+02i16qtpc6cocln14b4
|
||||
-> ssh-ed25519 1MUEqQ haiI/5EkuTZ2YHxsqSVlqfM0VVR24DIDrMS3RmXwAhU
|
||||
qVIAvLp2qG4A3f3OKUqAKqH1eOicJz54nfblPSUKrSw
|
||||
-> ssh-ed25519 dgBsjw /vCnznu73U99onCWcM0aQlW0azscyUe4BB2kKeZvtHs
|
||||
MPnvXR/WVsl/tJ1YPoc7nk2Ls2x9bbtJdNp3CQTuuWI
|
||||
--- OzkqKlw4xu3McMk20orQN0h+VPYfUUSDC+DsgRU1tSw
|
||||
ü^@ÃmŽÚé`B˜³#{¡Ÿ‚ GUu´‹|¹Á œ¡ rÚïjb¥:Ô“d²ù] GØÎ©¦ú²-«Â–MÁ³ŸÜálÙ3mÌí)½š@¢—±e?¯ªêe¤üZ
|
||||
Y}ÿ!fÐ
|
||||
Binary file not shown.
Binary file not shown.
Loading…
Add table
Reference in a new issue