mirror of
https://github.com/nmasur/dotfiles
synced 2024-12-24 17:44:52 +00:00
Compare commits
5 Commits
8585574100
...
488b5d61fd
Author | SHA1 | Date | |
---|---|---|---|
|
488b5d61fd | ||
|
6b5892eb1d | ||
|
c3be92dcaf | ||
|
64bee30b17 | ||
|
568fdc7491 |
19
.github/workflows/arrow.yml
vendored
19
.github/workflows/arrow.yml
vendored
@ -7,6 +7,7 @@ env:
|
|||||||
CLOUDFLARE_R2_ENDPOINT: "${{ secrets.CLOUDFLARE_ACCOUNT_ID }}.r2.cloudflarestorage.com"
|
CLOUDFLARE_R2_ENDPOINT: "${{ secrets.CLOUDFLARE_ACCOUNT_ID }}.r2.cloudflarestorage.com"
|
||||||
AWS_ACCESS_KEY_ID: ${{ secrets.CLOUDFLARE_R2_ACCESS_KEY }}
|
AWS_ACCESS_KEY_ID: ${{ secrets.CLOUDFLARE_R2_ACCESS_KEY }}
|
||||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.CLOUDFLARE_R2_SECRET_KEY }}
|
AWS_SECRET_ACCESS_KEY: ${{ secrets.CLOUDFLARE_R2_SECRET_KEY }}
|
||||||
|
AWS_DEFAULT_REGION: auto
|
||||||
AWS_ENDPOINT_URL_S3: "https://${{ secrets.CLOUDFLARE_ACCOUNT_ID }}.r2.cloudflarestorage.com"
|
AWS_ENDPOINT_URL_S3: "https://${{ secrets.CLOUDFLARE_ACCOUNT_ID }}.r2.cloudflarestorage.com"
|
||||||
TF_VAR_vultr_api_key: ${{ secrets.VULTR_API_KEY }}
|
TF_VAR_vultr_api_key: ${{ secrets.VULTR_API_KEY }}
|
||||||
|
|
||||||
@ -106,13 +107,17 @@ jobs:
|
|||||||
if: inputs.action == 'create'
|
if: inputs.action == 'create'
|
||||||
id: host
|
id: host
|
||||||
working-directory: ${{ env.TERRAFORM_DIRECTORY }}
|
working-directory: ${{ env.TERRAFORM_DIRECTORY }}
|
||||||
run: terraform output host_ip
|
run: terraform output -raw host_ip
|
||||||
|
|
||||||
- name: Wait on SSH
|
- name: Wait on SSH
|
||||||
uses: iFaxity/wait-on-action@v1.1.0
|
if: inputs.action == 'create'
|
||||||
with:
|
run: |
|
||||||
resource: tcp ${{ steps.host.outputs.stdout }}:22
|
for i in $(seq 1 15); do
|
||||||
interval: 5000
|
if $(nc -z -w 3 ${{ steps.host.outputs.stdout }} 22); then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
sleep 10
|
||||||
|
done
|
||||||
|
|
||||||
- name: Write Identity Keys to Files
|
- name: Write Identity Keys to Files
|
||||||
if: inputs.action == 'create'
|
if: inputs.action == 'create'
|
||||||
@ -122,4 +127,6 @@ jobs:
|
|||||||
|
|
||||||
- name: Copy Identity File to Host
|
- name: Copy Identity File to Host
|
||||||
if: inputs.action == 'create'
|
if: inputs.action == 'create'
|
||||||
run: scp -i deploy_ed25519 arrow_ed25519 noah@${{ steps.host.outputs.stdout }}:~/.ssh/id_ed25519
|
run: |
|
||||||
|
ssh noah@${{ steps.host.outputs.stdout }} 'mkdir -pv .ssh'
|
||||||
|
scp -i deploy_ed25519 arrow_ed25519 noah@${{ steps.host.outputs.stdout }}:~/.ssh/id_ed25519
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{ config, pkgs, ... }: {
|
{ config, pkgs, lib, ... }: {
|
||||||
|
|
||||||
config = {
|
config = lib.mkIf config.physical {
|
||||||
|
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
|
|
||||||
|
@ -60,7 +60,7 @@ in {
|
|||||||
dns = {
|
dns = {
|
||||||
provider = {
|
provider = {
|
||||||
name = "cloudflare";
|
name = "cloudflare";
|
||||||
api_token = "{env.CF_API_TOKEN}";
|
api_token = "{env.CLOUDFLARE_API_TOKEN}";
|
||||||
};
|
};
|
||||||
resolvers = [ "1.1.1.1" ];
|
resolvers = [ "1.1.1.1" ];
|
||||||
};
|
};
|
||||||
|
@ -6,12 +6,12 @@
|
|||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = { Type = "oneshot"; };
|
serviceConfig = { Type = "oneshot"; };
|
||||||
script = ''
|
script = ''
|
||||||
while true; do
|
for i in $(seq 1 10); do
|
||||||
if [ -f ${config.identityFile} ]; then
|
if [ -f ${config.identityFile} ]; then
|
||||||
echo "Identity file found."
|
echo "Identity file found."
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
sleep 5
|
sleep 6
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
@ -1,17 +1,17 @@
|
|||||||
-----BEGIN AGE ENCRYPTED FILE-----
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBlNHNi
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBkckt3
|
||||||
VzUvTDdmdndvOUpyMUlvdG5vSGNmdG9yWklPQlFFNVY5RzdabTMwCnh4YXdmY1d4
|
c1NtVEo1bm1XREk2ZE9PL1FkOFd0LzQ1R0J4TXN4VGd2clVrZ25NCjZKenFTdHFK
|
||||||
dXVzYUhnaXVNam1pb0cxNWowZUQ0WUprczExeDMzQ3dPWEEKLT4gc3NoLWVkMjU1
|
MWVZSXI0NXdVTkhJQXRFRFBRRnIxRHZaOHY1UWVDYW9vTm8KLT4gc3NoLWVkMjU1
|
||||||
MTkgWXlTVU1RIGJkN3FTSzFFR1ROVTl5UWhqRndnM25DRlVIRHEzUlhZcjNCSUxt
|
MTkgWXlTVU1RIHBmRERwcXdGanBVV0JOczg0Q0hOa1dVM09EeGMxWmJDMm9YU2Mx
|
||||||
dVlvMEUKVmVFWUlML3FPaW04enl6d1R2c1dJaXpNQVhKV0R5aHFDbUlleldRTnNB
|
djhxQkUKS2U2aHVza2JNdzltRW5wcWhqaTVPUEZoZGNWN2szQXlVYjZ3eXpwc2ZE
|
||||||
WQotPiBzc2gtZWQyNTUxOSBuanZYNUEgY0dGbTM2b01VdnlDMTVtck1mSmNybG41
|
OAotPiBzc2gtZWQyNTUxOSBuanZYNUEgbWU0WXA4RjVZWFdPcXZ5M1UwT3lON1JD
|
||||||
aUE0eHlNUytQcjJBQjhWREpXVQpndHFtb0h0N0pucGN4dnJjbER4c3hPVFBER3V1
|
cGhlRXZ2NEhWMHdEMitLWERqRQpKRGgwMUhISWE1Uk1ka1dteGo0dlhZcmNjVjN6
|
||||||
ZENwQkUzbmRFVnpjeGpvCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBIOFdxWThKSnpy
|
QmJBQWo0Mko4aE5jUm9rCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBLaU9sSmRzMlFG
|
||||||
T0xQN3Q1djlsV3VwcEdPaDIyZ21uclQ1bWo3T1VXQVF3ClhkQkNqSG5nOTBVcUNF
|
NjBYYTBYeFErNXJwZGVtZ1kvVmVCOXBDZWVoNWhDZ2hrCnE2dkJJSk8rbDRvSHYy
|
||||||
MFhZU1AwQzJCd05IZm5lVmp6cGU2VXlpTlFheEUKLT4gc3NoLWVkMjU1MTkgejFP
|
bEVTdXg0VTg1RzZUNi84K1ZvOVB2aUJzNHVPRkEKLT4gc3NoLWVkMjU1MTkgejFP
|
||||||
Y1p3IGZUd2tnNkxlOEhFamwvbjVQYkphSzM5VEMxNlpZREs1cUd6Q0JtKzNIem8K
|
Y1p3IEM0Mnlockc2SlA1bXJhdnpQNXFnQ2w5bzFSTWpIajJybTBIM3VuNTN5bFUK
|
||||||
Y0trL083WXI1RXdaS1luR0dDYml1R1YwbCtGeUlESkVrbHY3Mk5RdURlOAotLS0g
|
bXNIUVVhTzlRMUJTSEpJUURUMXZjRU5zczNjYnBUVVFmMDVEZllONjFjWQotLS0g
|
||||||
cWE1eFZVb3BEcWhtMlUxd002WitOVFpWb1VXcTVnaVYrNXFzVmlKeC9jRQrVsDej
|
NXdIUWduN2Q2eXFzNlFueFR6OWxITVBranpsNTdXaktiSFZ0TTBxRFNlNAr9JzVO
|
||||||
le+ACsK5t6K1sHxwMh1hEqTFj9oYJ8mdtYec12m8D07xEzZDlRT1WN6YNul1gWGJ
|
Rhx5rG7CSGdYfeMcuzye4jyE2yiVKi5TVr/qp3vbDpyDQKZLlAUSF/K0rTY9K7Rm
|
||||||
B8WcyGfzJTERNhft+/llqNr9YR4w5ePN5F8LBXpEUequ6Q==
|
ocY+y/V9ffh3LO2m1Y6BkRqWRJ7v4wcsc3jNGjDHlSB7EqnOwMCXyQAg
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
|
Loading…
Reference in New Issue
Block a user