From 5d57dd7a9afac8b7116b2765d1e7f92d330222be Mon Sep 17 00:00:00 2001 From: Antonio De Lucreziis Date: Sun, 3 Nov 2024 22:22:54 +0100 Subject: [PATCH] some tweaks --- .../2024-11-03-deploy-with-github-actions.md | 22 +++++++++++-------- src/pages/guide/index.astro | 2 +- src/styles/typography.scss | 7 +++++- 3 files changed, 20 insertions(+), 11 deletions(-) diff --git a/src/content/guides/2024-11-03-deploy-with-github-actions.md b/src/content/guides/2024-11-03-deploy-with-github-actions.md index a9998f3..8a0600c 100644 --- a/src/content/guides/2024-11-03-deploy-with-github-actions.md +++ b/src/content/guides/2024-11-03-deploy-with-github-actions.md @@ -60,7 +60,7 @@ jobs: run: rsync -cavz dist/ ${{ secrets.SSH_USER }}@poisson.phc.dm.unipi.it:public_html/ ``` -## Comando `rsync` +## Comando rsync Il comando `rsync` ha le seguenti opzioni: @@ -77,22 +77,26 @@ Il comando `rsync` ha le seguenti opzioni: Per stabilire una connessione SSH a Poisson dalle GitHub Actions in modo sicuro, dobbiamo aggiungere alcuni segreti alla nostra repository. Vediamo meglio il workflow: ```yaml - - name: Write SSH keys - run: | - install -m 600 -D /dev/null ~/.ssh/known_hosts - install -m 600 -D /dev/null ~/.ssh/id_ed25519 - echo "${{ secrets.SSH_KNOWN_HOSTS }}" > ~/.ssh/known_hosts - echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519 +- name: Write SSH keys + run: | + install -m 600 -D /dev/null ~/.ssh/known_hosts + install -m 600 -D /dev/null ~/.ssh/id_ed25519 + echo "${{ secrets.SSH_KNOWN_HOSTS }}" > ~/.ssh/known_hosts + echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519 ``` -Questa è la parte più importante del workflow, che permette di autenticarsi su Poisson senza dover inserire la password ogni volta (cosa che non è possibile con le GitHub Actions). Per farlo, creiamo in locale una coppia di chiavi SSH apposta per le GitHub Actions e aggiungiamo la chiave pubblica su Poisson. Per farlo, possiamo seguire questi passaggi: +Questa è la parte più importante del workflow, che permette di autenticarsi su Poisson senza dover inserire la password ogni volta (cosa che non possiamo materialmente fare dall GitHub Actions). + +Per farlo, creiamo in locale una coppia di chiavi SSH apposta per le GitHub Actions e aggiungiamo la chiave pubblica su Poisson. Per farlo, possiamo seguire questi passaggi: ```bash $ ssh-keygen -t ed25519 -C "deploy@github-actions" -f actions-deploy-key $ ssh-copy-id -i actions-deploy-key @poisson.phc.dm.unipi.it ``` -Poi facendo `cat actions-deploy-key` possiamo copiare il contenuto della chiave privata ed aggiungiamo il contenuto in un segreto chiamato `SSH_PRIVATE_KEY` nella nostra repository. +Qui generiamo una chiave ssh utilizzando l'algoritmo `ed25519` (leggermente più consigliato rispetto a `rsa`, in particolare ha anche chiavi più corte), `-C` aggiunge semplicemente un commento alla chiave e `-f` specifica il file in cui salvare la chiave. + +Poi eseguendo `cat actions-deploy-key` possiamo copiare il contenuto della chiave privata ed aggiungiamo il contenuto in un segreto chiamato `SSH_PRIVATE_KEY` nella nostra repository. Poi, per evitare che la connessione venga rifiutata, eseguiamo in locale anche uno scan delle chiavi SSH di Poisson: diff --git a/src/pages/guide/index.astro b/src/pages/guide/index.astro index ba54b49..5a76469 100644 --- a/src/pages/guide/index.astro +++ b/src/pages/guide/index.astro @@ -10,7 +10,7 @@ const guides = await getCollection('guides')

Guide

{ - guides.map(guide => ( + guides.toReversed().map(guide => (
{guide.data.title} diff --git a/src/styles/typography.scss b/src/styles/typography.scss index d6c2235..6b37bf2 100644 --- a/src/styles/typography.scss +++ b/src/styles/typography.scss @@ -142,7 +142,7 @@ font-weight: 700; color: #333; - // trick to fix anchor links with sticky header + // HACK: Trick to fix anchor links with sticky header padding-top: 7rem; margin-top: -6.5rem; } @@ -157,6 +157,11 @@ margin-right: auto; } + ol, + ul { + margin-bottom: var(--paragraph-margin, 1rem); + } + a, a:visited { color: var(--zone-color, #1e6733);