Compare commits
7 Commits
next-v0.8
...
v0.7.0-74-
Author | SHA1 | Date | |
---|---|---|---|
fb554251f9
|
|||
1f047f60d6
|
|||
de7e27251c
|
|||
01f24bcda6
|
|||
9db4810a7b
|
|||
146014f9f3
|
|||
3c6675de1e
|
@@ -1,7 +1,7 @@
|
|||||||
name: Release Tagging
|
name: Release Tagging
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
pull_request:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
- next-v0.8
|
- next-v0.8
|
||||||
@@ -26,15 +26,12 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
VERSION=$(grep '^version = "' Cargo.toml | sed -E 's/version = "([^"]+)"/\1/')
|
VERSION=$(grep '^version = "' Cargo.toml | sed -E 's/version = "([^"]+)"/\1/')
|
||||||
PROJECT_COMMIT_HASH=$(git rev-parse HEAD | cut -c 1-10)
|
PROJECT_COMMIT_HASH=$(git rev-parse HEAD | cut -c 1-10)
|
||||||
BRANCH_REF="${{ gitea.ref }}"
|
BRANCH_REF="${GITHUB_REF}"
|
||||||
BRANCH_NAME=$(echo "$BRANCH_REF" | cut -d '/' -f 3)
|
BRANCH_NAME=$(echo "$BRANCH_REF" | cut -d '/' -f 3)
|
||||||
PROJECT_TAG_RELEASE="v$VERSION-$BRANCH_NAME-$PROJECT_COMMIT_HASH-111"
|
PROJECT_TAG_RELEASE="v$VERSION-$BRANCH_NAME-$PROJECT_COMMIT_HASH"
|
||||||
|
echo "::set-output name=project_tag_release::$PROJECT_TAG_RELEASE-111"
|
||||||
echo "::set-output name=project_tag_release::$PROJECT_TAG_RELEASE"
|
|
||||||
|
|
||||||
echo "Version: $VERSION"
|
echo "Version: $VERSION"
|
||||||
echo "Hash: $PROJECT_COMMIT_HASH"
|
echo "Hash: $PROJECT_COMMIT_HASH"
|
||||||
echo "Branh ref: $BRANCH_REF"
|
|
||||||
echo "Branch: $BRANCH_NAME"
|
echo "Branch: $BRANCH_NAME"
|
||||||
echo "Tag Release: $PROJECT_TAG_RELEASE"
|
echo "Tag Release: $PROJECT_TAG_RELEASE"
|
||||||
|
|
||||||
|
2
Cargo.lock
generated
2
Cargo.lock
generated
@@ -149,7 +149,7 @@ checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "icarus_models"
|
name = "icarus_models"
|
||||||
version = "0.7.3"
|
version = "0.7.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"josekit",
|
"josekit",
|
||||||
"rand",
|
"rand",
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "icarus_models"
|
name = "icarus_models"
|
||||||
version = "0.7.3"
|
version = "0.7.0"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
rust-version = "1.90"
|
rust-version = "1.90"
|
||||||
description = "models used for the icarus project"
|
description = "models used for the icarus project"
|
||||||
|
@@ -114,11 +114,9 @@ mod tests {
|
|||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_cover_art_image() {
|
fn test_cover_art_image() {
|
||||||
let dir = String::from("./");
|
let path: String = String::from("somepath");
|
||||||
let filename = String::from("CoverArt.png");
|
let coverart = coverart::init::init_coverart_only_path(path.clone());
|
||||||
let coverart = coverart::init::init_coverart_dir_and_filename(&dir, &filename);
|
|
||||||
|
|
||||||
assert_eq!(dir, coverart.directory);
|
assert_eq!(path, coverart.path);
|
||||||
assert_eq!(filename, coverart.filename);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -2,7 +2,7 @@ use std::default::Default;
|
|||||||
|
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Clone, Debug, Default, Deserialize, Serialize, utoipa::ToSchema)]
|
#[derive(Clone, Debug, Deserialize, Serialize, utoipa::ToSchema)]
|
||||||
pub struct LoginResult {
|
pub struct LoginResult {
|
||||||
pub id: uuid::Uuid,
|
pub id: uuid::Uuid,
|
||||||
pub username: String,
|
pub username: String,
|
||||||
@@ -12,14 +12,20 @@ pub struct LoginResult {
|
|||||||
pub expiration: i64,
|
pub expiration: i64,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl LoginResult {
|
impl Default for LoginResult {
|
||||||
pub fn to_json(&self) -> Result<String, serde_json::Error> {
|
fn default() -> Self {
|
||||||
serde_json::to_string_pretty(&self)
|
LoginResult {
|
||||||
|
id: uuid::Uuid::nil(),
|
||||||
|
username: String::new(),
|
||||||
|
token: String::new(),
|
||||||
|
token_type: String::new(),
|
||||||
|
expiration: -1,
|
||||||
}
|
}
|
||||||
|
}
|
||||||
pub fn token_expired(&self) -> bool {
|
}
|
||||||
let current_time = time::OffsetDateTime::now_utc();
|
|
||||||
let expired = time::OffsetDateTime::from_unix_timestamp(self.expiration).unwrap();
|
impl LoginResult {
|
||||||
current_time > expired
|
pub fn _to_json(&self) -> Result<String, serde_json::Error> {
|
||||||
|
serde_json::to_string_pretty(&self)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
21
src/song.rs
21
src/song.rs
@@ -39,8 +39,8 @@ pub struct Song {
|
|||||||
pub track_count: i32,
|
pub track_count: i32,
|
||||||
#[serde(skip_serializing_if = "String::is_empty")]
|
#[serde(skip_serializing_if = "String::is_empty")]
|
||||||
pub audio_type: String,
|
pub audio_type: String,
|
||||||
#[serde(with = "time::serde::rfc3339::option")]
|
#[serde(skip_serializing_if = "String::is_empty")]
|
||||||
pub date_created: Option<time::OffsetDateTime>,
|
pub date_created: String,
|
||||||
#[serde(skip_serializing_if = "String::is_empty")]
|
#[serde(skip_serializing_if = "String::is_empty")]
|
||||||
pub filename: String,
|
pub filename: String,
|
||||||
#[serde(skip_serializing_if = "init::is_uuid_nil")]
|
#[serde(skip_serializing_if = "init::is_uuid_nil")]
|
||||||
@@ -71,22 +71,21 @@ impl Song {
|
|||||||
|
|
||||||
pub fn song_path(&self) -> Result<String, std::io::Error> {
|
pub fn song_path(&self) -> Result<String, std::io::Error> {
|
||||||
if self.directory.is_empty() {
|
if self.directory.is_empty() {
|
||||||
return Err(std::io::Error::other("Directory has not been initialized"));
|
return Err(std::io::Error::other("Directory does not exist"));
|
||||||
} else if self.filename.is_empty() {
|
|
||||||
return Err(std::io::Error::other("Filename has not bee initialized"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let directory = &self.directory;
|
let directory = &self.directory;
|
||||||
|
let mut buffer: String = directory.clone();
|
||||||
let last_index = directory.len() - 1;
|
let last_index = directory.len() - 1;
|
||||||
|
|
||||||
if let Some(character) = directory.chars().nth(last_index) {
|
if let Some(character) = directory.chars().nth(last_index) {
|
||||||
let buffer: String = if character != '/' {
|
if character != '/' {
|
||||||
directory.clone() + "/"
|
buffer += "/";
|
||||||
} else {
|
}
|
||||||
directory.clone()
|
|
||||||
};
|
|
||||||
|
|
||||||
Ok(buffer + &self.filename.clone())
|
buffer += &self.filename.clone();
|
||||||
|
|
||||||
|
Ok(buffer)
|
||||||
} else {
|
} else {
|
||||||
Err(std::io::Error::other(
|
Err(std::io::Error::other(
|
||||||
"Could not access last character of directory",
|
"Could not access last character of directory",
|
||||||
|
30
src/token.rs
30
src/token.rs
@@ -2,7 +2,7 @@ use std::default::Default;
|
|||||||
|
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Clone, Debug, Default, Deserialize, Serialize)]
|
#[derive(Clone, Debug, Deserialize, Serialize)]
|
||||||
pub struct Token {
|
pub struct Token {
|
||||||
pub scope: String,
|
pub scope: String,
|
||||||
pub expiration: i64,
|
pub expiration: i64,
|
||||||
@@ -27,16 +27,23 @@ pub struct AccessToken {
|
|||||||
pub message: String,
|
pub message: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl AccessToken {
|
impl Default for Token {
|
||||||
/// Get the token fit for Bearer authentication
|
fn default() -> Self {
|
||||||
pub fn bearer_token(&self) -> String {
|
Token {
|
||||||
format!("Bearer {}", self.token)
|
scope: String::new(),
|
||||||
|
expiration: -1,
|
||||||
|
audience: String::new(),
|
||||||
|
issuer: String::new(),
|
||||||
|
issued: -1,
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
pub fn token_expired(&self) -> bool {
|
impl AccessToken {
|
||||||
let current_time = time::OffsetDateTime::now_utc();
|
pub fn bearer_token(&self) -> String {
|
||||||
let expired = time::OffsetDateTime::from_unix_timestamp(self.expiration).unwrap();
|
let mut token: String = String::from("Bearer ");
|
||||||
current_time > expired
|
token += &self.token.clone();
|
||||||
|
token
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -45,10 +52,9 @@ impl Token {
|
|||||||
serde_json::to_string_pretty(&self)
|
serde_json::to_string_pretty(&self)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: Implement
|
||||||
pub fn token_expired(&self) -> bool {
|
pub fn token_expired(&self) -> bool {
|
||||||
let current_time = time::OffsetDateTime::now_utc();
|
false
|
||||||
let expired = time::OffsetDateTime::from_unix_timestamp(self.expiration).unwrap();
|
|
||||||
current_time > expired
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn contains_scope(&self, des_scope: &String) -> bool {
|
pub fn contains_scope(&self, des_scope: &String) -> bool {
|
||||||
|
Reference in New Issue
Block a user