Compare commits
No commits in common. "a74cf76b2b20444d3c503894f8c6ab7a5d901670" and "21742a231758f7aab0ba2c00cfc9affa23297334" have entirely different histories.
a74cf76b2b
...
21742a2317
|
|
@ -1,2 +0,0 @@
|
||||||
.woodpecker/
|
|
||||||
target/
|
|
||||||
33
Dockerfile
33
Dockerfile
|
|
@ -1,33 +0,0 @@
|
||||||
FROM rust:1.69-alpine AS builder
|
|
||||||
|
|
||||||
ARG DI_VER=1.2.5
|
|
||||||
|
|
||||||
RUN apk update && \
|
|
||||||
apk add --no-cache build-base curl
|
|
||||||
|
|
||||||
WORKDIR /build
|
|
||||||
|
|
||||||
# Build dumb-init
|
|
||||||
RUN curl -Lo - "https://github.com/Yelp/dumb-init/archive/refs/tags/v${DI_VER}.tar.gz" | tar -xzf - && \
|
|
||||||
cd "dumb-init-${DI_VER}" && \
|
|
||||||
make SHELL=/bin/sh && \
|
|
||||||
mv dumb-init ..
|
|
||||||
|
|
||||||
WORKDIR /build/affy
|
|
||||||
|
|
||||||
COPY ./ ./
|
|
||||||
|
|
||||||
RUN cargo build --release && \
|
|
||||||
[ "$(readelf -d target/release/affy | grep NEEDED | wc -l)" = 0 ]
|
|
||||||
|
|
||||||
|
|
||||||
FROM busybox:1.36.0
|
|
||||||
|
|
||||||
COPY --from=builder /build/dumb-init /build/affy/target/release/affy /bin/
|
|
||||||
|
|
||||||
WORKDIR /data
|
|
||||||
|
|
||||||
USER www-data:www-data
|
|
||||||
|
|
||||||
ENTRYPOINT ["/bin/dumb-init", "--"]
|
|
||||||
CMD ["/bin/affy"]
|
|
||||||
|
|
@ -22,19 +22,11 @@ impl AffluencesClient {
|
||||||
|
|
||||||
pub async fn search(&self, query: String) -> reqwest::Result<SiteSearchResponse> {
|
pub async fn search(&self, query: String) -> reqwest::Result<SiteSearchResponse> {
|
||||||
let url = "https://api.affluences.com/app/v3/sites";
|
let url = "https://api.affluences.com/app/v3/sites";
|
||||||
let body = SiteSearch {
|
let body = SiteSearch{
|
||||||
search_query: query,
|
search_query: query
|
||||||
};
|
};
|
||||||
|
|
||||||
Ok(self
|
Ok(self.client.post(url).json(&body).send().await?.json::<Data<SiteSearchResponse>>().await?.data)
|
||||||
.client
|
|
||||||
.post(url)
|
|
||||||
.json(&body)
|
|
||||||
.send()
|
|
||||||
.await?
|
|
||||||
.json::<Data<SiteSearchResponse>>()
|
|
||||||
.await?
|
|
||||||
.data)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn available(
|
pub async fn available(
|
||||||
|
|
@ -89,9 +81,3 @@ impl AffluencesClient {
|
||||||
.await
|
.await
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Default for AffluencesClient {
|
|
||||||
fn default() -> Self {
|
|
||||||
AffluencesClient::new()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
use chrono::NaiveTime;
|
use chrono::NaiveTime;
|
||||||
use serde::{self, Deserialize, Deserializer, Serializer};
|
use serde::{self, Deserialize, Deserializer, Serializer};
|
||||||
|
|
||||||
const FORMAT: &str = "%H:%M";
|
const FORMAT: &'static str = "%H:%M";
|
||||||
|
|
||||||
pub fn serialize<S>(time: &NaiveTime, serializer: S) -> Result<S::Ok, S::Error>
|
pub fn serialize<S>(time: &NaiveTime, serializer: S) -> Result<S::Ok, S::Error>
|
||||||
where
|
where
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Serialize, Deserialize};
|
||||||
|
|
||||||
#[derive(Serialize, Deserialize, Debug)]
|
#[derive(Serialize, Deserialize, Debug)]
|
||||||
pub struct Data<T> {
|
pub struct Data<T> {
|
||||||
|
|
@ -107,12 +107,12 @@ pub struct SiteData {
|
||||||
|
|
||||||
#[derive(Serialize, Debug)]
|
#[derive(Serialize, Debug)]
|
||||||
pub struct SiteSearch {
|
pub struct SiteSearch {
|
||||||
pub search_query: String,
|
pub search_query: String
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Serialize, Deserialize, Debug)]
|
#[derive(Serialize, Deserialize, Debug)]
|
||||||
pub struct SiteSearchResponse {
|
pub struct SiteSearchResponse {
|
||||||
pub page: u32,
|
pub page: u32,
|
||||||
pub max_size: u32,
|
pub max_size: u32,
|
||||||
pub results: Vec<SiteData>,
|
pub results: Vec<SiteData>
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ use chrono::{Duration, NaiveDate};
|
||||||
use uuid::{uuid, Uuid};
|
use uuid::{uuid, Uuid};
|
||||||
|
|
||||||
const STERRE_BIB_ID: Uuid = uuid!("4737e57a-ee05-4f7b-901a-7bb541eeb297");
|
const STERRE_BIB_ID: Uuid = uuid!("4737e57a-ee05-4f7b-901a-7bb541eeb297");
|
||||||
const TIME_FORMAT: &str = "%H:%M";
|
const TIME_FORMAT: &'static str = "%H:%M";
|
||||||
|
|
||||||
/// Show this help menu
|
/// Show this help menu
|
||||||
#[poise::command(prefix_command, track_edits, slash_command)]
|
#[poise::command(prefix_command, track_edits, slash_command)]
|
||||||
|
|
@ -90,7 +90,7 @@ pub async fn available(ctx: Context<'_>, date: NaiveDate) -> Result<(), Error> {
|
||||||
let mut fields: Vec<(String, String, bool)> = Default::default();
|
let mut fields: Vec<(String, String, bool)> = Default::default();
|
||||||
|
|
||||||
for resource in &resources {
|
for resource in &resources {
|
||||||
if resource.hours.is_empty() {
|
if resource.hours.len() == 0 {
|
||||||
fields.push((
|
fields.push((
|
||||||
resource.resource_name.clone(),
|
resource.resource_name.clone(),
|
||||||
"Nothing available.".to_string(),
|
"Nothing available.".to_string(),
|
||||||
|
|
@ -158,5 +158,5 @@ pub async fn available(ctx: Context<'_>, date: NaiveDate) -> Result<(), Error> {
|
||||||
// ctx: Context<'_>,
|
// ctx: Context<'_>,
|
||||||
// date: NaiveDate,
|
// date: NaiveDate,
|
||||||
// ) -> Result<(), Error> {
|
// ) -> Result<(), Error> {
|
||||||
|
|
||||||
// }
|
// }
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue