User Tools

Site Tools


projets:fuz:spaceapi

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
projets:fuz:spaceapi [2021-09-10 12:20] – [Resources] metrics.spaceapi.io -> .community Lomanicprojets:fuz:spaceapi [2023-02-02 22:06] (current) – external edit 127.0.0.1
Line 5: Line 5:
   * Owner: [[:user:Lomanic]]   * Owner: [[:user:Lomanic]]
   * Participants: you?   * Participants: you?
-  * Status: **running**+  * Status: **online**
   * Project created on **Sat 17-10-20** by **[[:user:Lomanic]]**   * Project created on **Sat 17-10-20** by **[[:user:Lomanic]]**
  
 ===== Goals ===== ===== Goals =====
 +
   * serve a [[https://spaceapi.io/|SpaceAPI]] endpoint at https://spaceapi.fuz.re (**done**)   * serve a [[https://spaceapi.io/|SpaceAPI]] endpoint at https://spaceapi.fuz.re (**done**)
   * set the opening status according to the [[presence button]] API at https://presence.fuz.re/api (**done**)   * set the opening status according to the [[presence button]] API at https://presence.fuz.re/api (**done**)
Line 14: Line 15:
  
 ===== Resources ===== ===== Resources =====
 +  * Introduction to SpaceAPI on HaD https://hackaday.com/2021/06/18/do-you-spaceapi/
   * https://spaceapi.io/   * https://spaceapi.io/
   * https://spaceapi.io/provide-an-endpoint/   * https://spaceapi.io/provide-an-endpoint/
Line 83: Line 85:
 WantedBy=multi-user.target WantedBy=multi-user.target
 EOF EOF
-sudo systemctl enable spaceapi.service +sudo systemctl enable --now spaceapi.service
-sudo systemctl start spaceapi.service+
 curl localhost:3001 curl localhost:3001
 sudo mkdir -p /var/www/fuz.re/spaceapi/site sudo mkdir -p /var/www/fuz.re/spaceapi/site
-sudo certbot certonly --webroot -w /var/www/fuz.re/spaceapi/site -d spaceapi.fuz.re --deploy-hook 'cat "$RENEWED_LINEAGE/privkey.pem" "$RENEWED_LINEAGE/cert.pem" > "$RENEWED_LINEAGE/combined.pem"' --post-hook '/usr/sbin/lighttpd -t -f /etc/lighttpd/lighttpd.conf && service lighttpd reload'+sudo certbot certonly --webroot -w /var/www/fuz.re/spaceapi/site -d spaceapi.fuz.re --deploy-hook '/usr/sbin/lighttpd -t -f /etc/lighttpd/lighttpd.conf && service lighttpd reload'
 </code> </code>
-No need to mess with anything else, certbot is already called every ~12 hours as it was installed from Debian repos https://certbot.eff.org/docs/using.html#automated-renewals and lighttpd is reloaded after successful renewal. This config is persistent in ''/etc/letsencrypt/renewal/spaceapi.fuz.re.conf'' (automatically created by the previous certbot command), [[https://certbot.eff.org/docs/using.html#renewal-config-file|see its doc here]].+No need to mess with anything else, certbot is already called every ~12 hours (see ''/etc/cron.d/certbot''as it was installed from Debian repos https://certbot.eff.org/docs/using.html#automated-renewals and lighttpd is reloaded after successful renewal. This config is persistent in ''/etc/letsencrypt/renewal/spaceapi.fuz.re.conf'' (automatically created by the previous certbot command), [[https://certbot.eff.org/docs/using.html#renewal-config-file|see its doc here]]. 
 + 
 +(To note: the certbot command was originally ''<nowiki>sudo certbot certonly --webroot -w /var/www/fuz.re/spaceapi/site -d spaceapi.fuz.re --deploy-hook 'cat "$RENEWED_LINEAGE/privkey.pem" "$RENEWED_LINEAGE/cert.pem" > "$RENEWED_LINEAGE/combined.pem"' --post-hook '/usr/sbin/lighttpd -t -f /etc/lighttpd/lighttpd.conf && service lighttpd reload'</nowiki>'' but combining certs is not useful anymore in lighttpd, see [[https://github.com/certbot/certbot/issues/94#issuecomment-658217459|certbot/certbot#94]])
  
 Corresponding lighttpd vhost config Corresponding lighttpd vhost config
Line 104: Line 107:
                 ssl.engine  = "enable"                 ssl.engine  = "enable"
                 proxy.server = ( "" => (("host" => "127.0.0.1", "port" => 3001)) )                 proxy.server = ( "" => (("host" => "127.0.0.1", "port" => 3001)) )
-                ssl.ca-file = "/etc/letsencrypt/live/spaceapi.fuz.re/chain.pem" +                ssl.pemfile = "/etc/letsencrypt/live/spaceapi.fuz.re/fullchain.pem" 
-                ssl.pemfile = "/etc/letsencrypt/live/spaceapi.fuz.re/combined.pem"+                ssl.privkey = "/etc/letsencrypt/live/spaceapi.fuz.re/privkey.pem"
         }         }
 } }
Line 127: Line 130:
  
 Pull request opened https://github.com/SpaceApi/directory/pull/157 and merged! The hackerspace is now on [[https://api.spaceapi.io/]]! Pull request opened https://github.com/SpaceApi/directory/pull/157 and merged! The hackerspace is now on [[https://api.spaceapi.io/]]!
 +
 +==== 2022-09-27 ====
 +
 +Redeployed on the new "octo" server, [[#deployment|following the previous documentation]] but with the following configuration in ''/etc/systemd/system/spaceapi.service''
 +
 +<code>
 +Environment='SPACEAPI={"api":"0.14","api_compatibility":["14"],"space":"FUZ","logo":"https://wiki.fuz.re/lib/exe/fetch.php?media=wiki:logo.png","url":"https://fuz.re/","location":{"address":"57-59 Rue Étienne Marcel, 93100 Montreuil, FRANCE","lon":2.430790,"lat":48.858110},"contact":{"email":"","irc":"","ml":"fuz@fuz.re","twitter":"@fuz_re","matrix":"https://matrix.to/#/#fuz_general:matrix.fuz.re"},"issue_report_channels":["ml","twitter"],"state":{"icon":{"open":"https://presence.fuz.re/img","closed":"https://presence.fuz.re/img"},"message":"we are still moving in"},"projects":["https://wiki.fuz.re/doku.php?id=projets:fuz:start"]}'
 +</code>
 +
 +[[https://github.com/Lomanic/fuz-spaceapi/tree/spec0.14|With the following branch]], making our endpoint up to the 0.14 spec and not completely broken when there's no (like currently) presence API available
projets/fuz/spaceapi.1631276445.txt.gz · Last modified: 2023-02-02 22:06 (external edit)