Compare commits
4
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bc64981023
|
||
|
|
3620010212
|
||
|
|
aa86bf65e4
|
||
|
|
e673b484ce
|
+55
-4
@@ -59,6 +59,11 @@ usermod -aG www-data deploy
|
||||
# Répertoire de l'application
|
||||
mkdir -p /var/www/annu-kute-ced
|
||||
chown -R deploy:www-data /var/www/annu-kute-ced
|
||||
|
||||
# Répertoire SSH de l'utilisateur deploy (préparé pour les clés publiques)
|
||||
mkdir -p /home/deploy/.ssh
|
||||
chmod 700 /home/deploy/.ssh
|
||||
chown -R deploy:deploy /home/deploy/.ssh
|
||||
----
|
||||
|
||||
== 3️⃣ Clone du dépôt
|
||||
@@ -200,15 +205,61 @@ Ouvrir le site dans un navigateur : vidéos, podcasts, timeline et le bouton d'i
|
||||
|
||||
== 8️⃣ Clé SSH du CI
|
||||
|
||||
C'est la clé utilisée par le runner Gitea Actions pour déployer. Elle est *différente* de la deploy key de lecture (étape 3) : celle-ci doit pouvoir écrire dans le clone.
|
||||
C'est la clé utilisée par le runner Gitea Actions pour se connecter au serveur et déployer. Elle est *différente* de la deploy key de lecture (étape 3) : celle-ci doit pouvoir écrire dans le clone.
|
||||
|
||||
Générez la paire de clés *sur votre poste local* (pas sur le serveur), puis transférez la clé publique sur le serveur pour l'autoriser.
|
||||
|
||||
[source,bash]
|
||||
----
|
||||
# Générer la paire SUR VOTRE POSTE (pas sur le serveur)
|
||||
# Sur votre poste local
|
||||
ssh-keygen -t ed25519 -f annu-kute-ced-deploy -C "ci-gitea-annu-kute-ced"
|
||||
|
||||
# Autoriser la clé publique pour l'utilisateur deploy
|
||||
sudo -u deploy tee -a /home/deploy/.ssh/authorized_keys < annu-kute-ced-deploy.pub
|
||||
# Affichez la clé publique (elle doit être copiée sur le serveur)
|
||||
cat annu-kute-ced-deploy.pub
|
||||
----
|
||||
|
||||
=== Transfert de la clé publique sur le serveur
|
||||
|
||||
Option A — copie directe avec `scp` (depuis votre poste) :
|
||||
|
||||
[source,bash]
|
||||
----
|
||||
# Sur votre poste local (adapter user@serveur si vous ne vous connectez pas en root)
|
||||
scp annu-kute-ced-deploy.pub root@<IP_DU_SERVEUR>:/tmp/annu-kute-ced-deploy.pub
|
||||
|
||||
# Puis sur le serveur, ajoutez-la au fichier authorized_keys de deploy
|
||||
sudo -u deploy mkdir -p /home/deploy/.ssh
|
||||
sudo -u deploy tee -a /home/deploy/.ssh/authorized_keys < /tmp/annu-kute-ced-deploy.pub
|
||||
----
|
||||
|
||||
Option B — connexion SSH sur le serveur, puis création manuelle du fichier :
|
||||
|
||||
[source,bash]
|
||||
----
|
||||
# Sur le serveur, connecté en root ou avec sudo
|
||||
sudo -u deploy mkdir -p /home/deploy/.ssh
|
||||
sudo -u deploy tee -a /home/deploy/.ssh/authorized_keys
|
||||
# Coller le contenu de annu-kute-ced-deploy.pub, puis Ctrl+D
|
||||
----
|
||||
|
||||
Quelle que soit la méthode, vérifiez les permissions :
|
||||
|
||||
[source,bash]
|
||||
----
|
||||
chown -R deploy:deploy /home/deploy/.ssh
|
||||
chmod 700 /home/deploy/.ssh
|
||||
chmod 600 /home/deploy/.ssh/authorized_keys
|
||||
----
|
||||
|
||||
=== Test de la connexion CI
|
||||
|
||||
Avant d'enregistrer la clé privée dans Gitea, testez depuis votre poste que la connexion fonctionne avec la clé privée générée :
|
||||
|
||||
[source,bash]
|
||||
----
|
||||
# Sur votre poste local
|
||||
ssh -i annu-kute-ced-deploy deploy@<IP_DU_SERVEUR> "whoami && hostname"
|
||||
# Attendu : "deploy" et le nom du serveur, sans mot de passe demandé
|
||||
----
|
||||
|
||||
La clé privée (`annu-kute-ced-deploy`, sans passphrase) ira dans les secrets Gitea à l'étape suivante. *Conservez-la en lieu sûr et ne la commitez jamais.*
|
||||
|
||||
+20
-8
@@ -492,12 +492,12 @@ NOTE: La timeline n'a pas de flag d'activation : elle est toujours affichée sur
|
||||
| Constante | Défaut | Description
|
||||
|
||||
| `DONATIONS_ENABLED`
|
||||
| `false`
|
||||
| `true`
|
||||
| Activer le système (icône cœur, lien « Soutenir », page `/dons.php`)
|
||||
|
||||
| `LIBERAPAY_URL` / `KOFI_URL`
|
||||
| `''` / `''`
|
||||
| URLs des plateformes externes
|
||||
| `'https://liberapay.com/OKI/donate'` / `''`
|
||||
| URLs des plateformes externes. Par défaut le lien Liberapay pointe vers OKI, mainteneur de l'application.
|
||||
|
||||
| `STRIPE_ENABLED`
|
||||
| `false`
|
||||
@@ -518,9 +518,15 @@ NOTE: La timeline n'a pas de flag d'activation : elle est toujours affichée sur
|
||||
| `DONATION_CURRENCY`
|
||||
| `'EUR'`
|
||||
| Devise
|
||||
|
||||
| `DONATIONS_OKI_DISCLAIMER`
|
||||
| Texte explicite
|
||||
| Message affiché sur `/dons.php` lorsque les liens pointent vers les comptes d'une organisation tierce (OKI par défaut). Laissez vide pour masquer.
|
||||
|===
|
||||
|
||||
NOTE: Au moins une plateforme (LiberaPay, Ko-fi ou Stripe) doit être configurée pour que `dons.php` s'affiche, sinon la page renvoie une erreur 500.
|
||||
NOTE: Au moins une plateforme (LiberaPay, Ko-fi ou Stripe) doit être configurée pour que `dons.php` s'affiche, sinon la page renvoie une erreur 500. Par défaut, seul le compte Liberapay de OKI est renseigné.
|
||||
|
||||
TIP: Si vous déployez une instance indépendante, remplacez `LIBERAPAY_URL` par votre propre lien et adaptez ou videz `DONATIONS_OKI_DISCLAIMER`.
|
||||
|
||||
.Compte à rebours (maintenance / lancement)
|
||||
[cols="2,2,3",options="header"]
|
||||
@@ -1422,12 +1428,12 @@ NOTE: The timeline has no enable flag: it is always displayed on the homepage.
|
||||
| Constant | Default | Description
|
||||
|
||||
| `DONATIONS_ENABLED`
|
||||
| `false`
|
||||
| `true`
|
||||
| Enable the system (heart icon, "Support" link, `/dons.php` page)
|
||||
|
||||
| `LIBERAPAY_URL` / `KOFI_URL`
|
||||
| `''` / `''`
|
||||
| External platform URLs
|
||||
| `'https://liberapay.com/OKI/donate'` / `''`
|
||||
| External platform URLs. By default the LiberaPay link points to OKI, the application maintainer.
|
||||
|
||||
| `STRIPE_ENABLED`
|
||||
| `false`
|
||||
@@ -1448,9 +1454,15 @@ NOTE: The timeline has no enable flag: it is always displayed on the homepage.
|
||||
| `DONATION_CURRENCY`
|
||||
| `'EUR'`
|
||||
| Currency
|
||||
|
||||
| `DONATIONS_OKI_DISCLAIMER`
|
||||
| Explanatory text
|
||||
| Message shown on `/dons.php` when donation links point to a third-party organization (OKI by default). Leave empty to hide.
|
||||
|===
|
||||
|
||||
NOTE: At least one platform (LiberaPay, Ko-fi or Stripe) must be configured for `dons.php` to render, otherwise the page returns a 500 error.
|
||||
NOTE: At least one platform (LiberaPay, Ko-fi or Stripe) must be configured for `dons.php` to render, otherwise the page returns a 500 error. By default only OKI's LiberaPay account is set.
|
||||
|
||||
TIP: If you deploy an independent instance, replace `LIBERAPAY_URL` with your own link and update or clear `DONATIONS_OKI_DISCLAIMER`.
|
||||
|
||||
.Countdown (maintenance / launch)
|
||||
[cols="2,2,3",options="header"]
|
||||
|
||||
@@ -82,6 +82,45 @@
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* Avertissement de transparence sur la page de dons */
|
||||
.donation-disclaimer {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto 30px;
|
||||
padding: 20px 24px;
|
||||
background: var(--card-bg);
|
||||
border: 1px solid var(--border-color);
|
||||
border-left: 4px solid var(--primary-red);
|
||||
border-radius: 12px;
|
||||
color: var(--text-color);
|
||||
box-shadow: var(--card-shadow);
|
||||
}
|
||||
|
||||
.donation-disclaimer p {
|
||||
margin: 0;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
.donation-disclaimer i {
|
||||
color: var(--primary-red);
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.donation-disclaimer a {
|
||||
color: var(--primary-red);
|
||||
text-decoration: underline;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.donation-disclaimer a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.donation-disclaimer {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
/* Interface de don */
|
||||
.donation-interface {
|
||||
background: var(--card-bg);
|
||||
|
||||
@@ -49,6 +49,24 @@ $currencySymbol = $currency === 'EUR' ? '€' : '$';
|
||||
$stripeOneTimeLinks = defined('STRIPE_ONE_TIME_LINKS') ? STRIPE_ONE_TIME_LINKS : [];
|
||||
$stripeMonthlyLinks = defined('STRIPE_MONTHLY_LINKS') ? STRIPE_MONTHLY_LINKS : [];
|
||||
|
||||
/**
|
||||
* Convertit les URLs d'un texte en liens cliquables tout en échappant le reste.
|
||||
* Utilisé pour le message de transparence sur les dons.
|
||||
*/
|
||||
function linkUrlsInText(string $text): string {
|
||||
$parts = preg_split('/(https?:\/\/[^\s<]+)/i', $text, -1, PREG_SPLIT_DELIM_CAPTURE);
|
||||
$result = '';
|
||||
foreach ($parts as $i => $part) {
|
||||
if ($i % 2 === 1) {
|
||||
$url = htmlspecialchars($part, ENT_QUOTES, 'UTF-8');
|
||||
$result .= '<a href="' . $url . '" target="_blank" rel="noopener noreferrer">' . $url . '</a>';
|
||||
} else {
|
||||
$result .= htmlspecialchars($part, ENT_QUOTES, 'UTF-8');
|
||||
}
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
@@ -133,6 +151,13 @@ $stripeMonthlyLinks = defined('STRIPE_MONTHLY_LINKS') ? STRIPE_MONTHLY_LINKS : [
|
||||
|
||||
<!-- Section principale de don -->
|
||||
<section class="donation-main">
|
||||
<!-- Avertissement de transparence (optionnel) -->
|
||||
<?php if (defined('DONATIONS_OKI_DISCLAIMER') && !empty(DONATIONS_OKI_DISCLAIMER)): ?>
|
||||
<div class="donation-disclaimer" role="note">
|
||||
<p><i class="fas fa-info-circle"></i> <?php echo linkUrlsInText(DONATIONS_OKI_DISCLAIMER); ?></p>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<div class="donation-content">
|
||||
<div class="donation-message">
|
||||
<!-- PERSONNALISEZ: Votre message de don -->
|
||||
|
||||
+25
-14
@@ -222,32 +222,43 @@ if (!defined('WORDPRESS_ENABLED')) define('WORDPRESS_ENABLED', false);
|
||||
// =========================================
|
||||
|
||||
// Activation du système de dons par défaut
|
||||
if (!defined('DONATIONS_ENABLED')) define('DONATIONS_ENABLED', false);
|
||||
// Par défaut les dons sont activés et pointent vers les comptes de l'association
|
||||
// ORGANISATION KA INTERNATIONALE (OKI), mainteneur de l'application.
|
||||
// Modifiez ces valeurs dans config.local.php pour utiliser vos propres comptes.
|
||||
if (!defined('DONATIONS_ENABLED')) define('DONATIONS_ENABLED', true);
|
||||
|
||||
// URLs des plateformes de don
|
||||
if (!defined('LIBERAPAY_URL')) define('LIBERAPAY_URL', ''); // Ex: https://liberapay.com/votre-compte/donate
|
||||
if (!defined('KOFI_URL')) define('KOFI_URL', ''); // Ex: https://ko-fi.com/votre-compte
|
||||
if (!defined('LIBERAPAY_URL')) define('LIBERAPAY_URL', 'https://liberapay.com/OKI/donate');
|
||||
if (!defined('KOFI_URL')) define('KOFI_URL', 'https://ko-fi.com/J3J5TOZPI'); // Ex: https://ko-fi.com/votre-compte
|
||||
if (!defined('STRIPE_ENABLED')) define('STRIPE_ENABLED', false);
|
||||
|
||||
// Message de transparence affiché sur la page de dons.
|
||||
// Renseignez ce texte lorsque les liens pointent vers les comptes d'une organisation
|
||||
// tierce (par exemple OKI) afin d'expliquer aux visiteurs pourquoi.
|
||||
// Les URLs présentes dans ce texte sont automatiquement transformées en liens cliquables.
|
||||
if (!defined('DONATIONS_OKI_DISCLAIMER')) {
|
||||
define('DONATIONS_OKI_DISCLAIMER', 'Les liens ci-dessous pointent vers les comptes de donation de l\'association ORGANISATION KA INTERNATIONALE (OKI) — o-k-i.net. Pour soutenir spécifiquement OKI : o-k-i.net/dons. Pour adapter cette page à votre propre instance, voir la documentation (lien "Code Source" en bas de la page)');
|
||||
}
|
||||
|
||||
// Configuration Stripe
|
||||
if (!defined('STRIPE_ONE_TIME_LINKS')) {
|
||||
define('STRIPE_ONE_TIME_LINKS', [
|
||||
1 => '', // Lien Stripe pour don de 1€
|
||||
5 => '', // Lien Stripe pour don de 5€
|
||||
10 => '', // Lien Stripe pour don de 10€
|
||||
20 => '', // Lien Stripe pour don de 20€
|
||||
50 => '', // Lien Stripe pour don de 50€
|
||||
'custom' => '' // Lien Stripe pour montant personnalisé
|
||||
1 => 'https://don.o-k-i.net/b/aEUdTw5SD3SH7m0bII', // Lien pour don de 1€
|
||||
5 => 'https://don.o-k-i.net/b/4gw6r480L1Kz5dScMO', // Lien pour don de 5€
|
||||
10 => 'https://don.o-k-i.net/b/5kA02G1Cn4WLbCgeUV', // Lien pour don de 10€
|
||||
20 => 'https://don.o-k-i.net/b/fZebLo94PfBpayc5kn', // Lien pour don de 20€
|
||||
50 => 'https://don.o-k-i.net/b/6oE5n05SDdth49O004', // Lien pour don de 50€
|
||||
'custom' => 'https://don.o-k-i.net/b/6oE2aO94P88X9u8eV4' // Lien pour montant personnalisé
|
||||
]);
|
||||
}
|
||||
|
||||
if (!defined('STRIPE_MONTHLY_LINKS')) {
|
||||
define('STRIPE_MONTHLY_LINKS', [
|
||||
1 => '', // Lien Stripe pour don mensuel de 1€
|
||||
5 => '', // Lien Stripe pour don mensuel de 5€
|
||||
10 => '', // Lien Stripe pour don mensuel de 10€
|
||||
20 => '', // Lien Stripe pour don mensuel de 20€
|
||||
50 => '', // Lien Stripe pour don mensuel de 50€
|
||||
1 => 'https://don.o-k-i.net/b/7sI9Dgch14WL7m0fZ3', // Lien pour don mensuel de 1€
|
||||
5 => 'https://don.o-k-i.net/b/8wM4iW4Ozbl95dS6ow', // Lien pour don mensuel de 5€
|
||||
10 => 'https://don.o-k-i.net/b/8wM2aO80L74TcGk3ci', // Lien pour don mensuel de 10€
|
||||
20 => 'https://don.o-k-i.net/b/00g7v894P88XgWAfZ7', // Lien pour don mensuel de 20€
|
||||
50 => 'https://don.o-k-i.net/b/4gw8zc6WHgFtcGkbIP', // Lien pour don mensuel de 50€
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@@ -349,10 +349,14 @@ define('WORDPRESS_ENABLED', false);
|
||||
// =========================================
|
||||
|
||||
// Activer/désactiver le système de dons
|
||||
// Par défaut les dons sont activés et pointent vers le compte Liberapay de OKI.
|
||||
// Décommentez et passez à false pour désactiver complètement la page de dons.
|
||||
// define('DONATIONS_ENABLED', true);
|
||||
|
||||
// URLs des plateformes de don
|
||||
// define('LIBERAPAY_URL', 'https://liberapay.com/votre-compte/donate');
|
||||
// Les exemples ci-dessous reproduisent la configuration par défaut (OKI).
|
||||
// Remplacez-les par vos propres comptes si vous déployez une instance indépendante.
|
||||
// define('LIBERAPAY_URL', 'https://liberapay.com/OKI/donate');
|
||||
// define('KOFI_URL', 'https://ko-fi.com/votre-compte');
|
||||
|
||||
// Activer/désactiver les dons via Stripe
|
||||
@@ -383,6 +387,13 @@ define('WORDPRESS_ENABLED', false);
|
||||
// Devise pour les dons
|
||||
// define('DONATION_CURRENCY', 'EUR');
|
||||
|
||||
// Message de transparence affiché sur la page de dons.
|
||||
// À renseigner si les liens pointent vers les comptes d'une organisation tierce
|
||||
// (par exemple OKI) afin d'expliquer aux visiteurs pourquoi.
|
||||
// Les URLs présentes dans ce texte sont automatiquement transformées en liens cliquables.
|
||||
// Laissez vide ou commentez pour masquer ce message.
|
||||
// define('DONATIONS_OKI_DISCLAIMER', 'Les liens ci-dessous pointent vers les comptes de donation de l\'association ORGANISATION KA INTERNATIONALE (OKI) — https://o-k-i.net. Pour soutenir spécifiquement OKI : https://o-k-i.net/dons. Pour adapter cette page à votre propre instance, voir la documentation : https://labola.o-k-i.net/cedric/annu-kute-ced');
|
||||
|
||||
// =========================================
|
||||
// Texte de présentation du podcast
|
||||
// =========================================
|
||||
|
||||
Reference in New Issue
Block a user