some tweaks

main
Antonio De Lucreziis 3 weeks ago
parent d9b4834268
commit 5d57dd7a9a

@ -60,7 +60,7 @@ jobs:
run: rsync -cavz dist/ ${{ secrets.SSH_USER }}@poisson.phc.dm.unipi.it:public_html/ 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: 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: 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 ```yaml
- name: Write SSH keys - name: Write SSH keys
run: | run: |
install -m 600 -D /dev/null ~/.ssh/known_hosts install -m 600 -D /dev/null ~/.ssh/known_hosts
install -m 600 -D /dev/null ~/.ssh/id_ed25519 install -m 600 -D /dev/null ~/.ssh/id_ed25519
echo "${{ secrets.SSH_KNOWN_HOSTS }}" > ~/.ssh/known_hosts echo "${{ secrets.SSH_KNOWN_HOSTS }}" > ~/.ssh/known_hosts
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519 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 ```bash
$ ssh-keygen -t ed25519 -C "deploy@github-actions" -f actions-deploy-key $ ssh-keygen -t ed25519 -C "deploy@github-actions" -f actions-deploy-key
$ ssh-copy-id -i actions-deploy-key <username>@poisson.phc.dm.unipi.it $ ssh-copy-id -i actions-deploy-key <username>@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: Poi, per evitare che la connessione venga rifiutata, eseguiamo in locale anche uno scan delle chiavi SSH di Poisson:

@ -10,7 +10,7 @@ const guides = await getCollection('guides')
<h1>Guide</h1> <h1>Guide</h1>
<div class="card-list"> <div class="card-list">
{ {
guides.map(guide => ( guides.toReversed().map(guide => (
<div class="card"> <div class="card">
<div class="title"> <div class="title">
<a href={`/guide/${guide.slug}`}>{guide.data.title}</a> <a href={`/guide/${guide.slug}`}>{guide.data.title}</a>

@ -142,7 +142,7 @@
font-weight: 700; font-weight: 700;
color: #333; color: #333;
// trick to fix anchor links with sticky header // HACK: Trick to fix anchor links with sticky header
padding-top: 7rem; padding-top: 7rem;
margin-top: -6.5rem; margin-top: -6.5rem;
} }
@ -157,6 +157,11 @@
margin-right: auto; margin-right: auto;
} }
ol,
ul {
margin-bottom: var(--paragraph-margin, 1rem);
}
a, a,
a:visited { a:visited {
color: var(--zone-color, #1e6733); color: var(--zone-color, #1e6733);

Loading…
Cancel
Save