Merge pull request 'feature/kubernetes-management' (#70) from feature/kubernetes-management into master
All checks were successful
Auto Tag / autotag (push) Successful in 5s
Auto Tag / wiki-sync (push) Successful in 7s
Test / frontend-tests (push) Successful in 1m27s
Test / frontend-typecheck (push) Successful in 1m33s
Auto Tag / changelog (push) Successful in 1m43s
Auto Tag / build-linux-amd64 (push) Successful in 9m31s
Auto Tag / build-windows-amd64 (push) Successful in 11m21s
Auto Tag / build-linux-arm64 (push) Successful in 11m19s
Test / rust-fmt-check (push) Successful in 14m38s
Test / rust-clippy (push) Successful in 16m14s
Test / rust-tests (push) Successful in 18m23s
Auto Tag / build-macos-arm64 (push) Successful in 18m1s
All checks were successful
Auto Tag / autotag (push) Successful in 5s
Auto Tag / wiki-sync (push) Successful in 7s
Test / frontend-tests (push) Successful in 1m27s
Test / frontend-typecheck (push) Successful in 1m33s
Auto Tag / changelog (push) Successful in 1m43s
Auto Tag / build-linux-amd64 (push) Successful in 9m31s
Auto Tag / build-windows-amd64 (push) Successful in 11m21s
Auto Tag / build-linux-arm64 (push) Successful in 11m19s
Test / rust-fmt-check (push) Successful in 14m38s
Test / rust-clippy (push) Successful in 16m14s
Test / rust-tests (push) Successful in 18m23s
Auto Tag / build-macos-arm64 (push) Successful in 18m1s
Reviewed-on: #70
This commit is contained in:
commit
65b15d9d77
@ -134,14 +134,17 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
|
||||
git-cliff --config cliff.toml --output CHANGELOG.md
|
||||
# Generate changelog for current tag only
|
||||
PREV_TAG=$(git tag --sort=-version:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' \
|
||||
| grep -v "^${CURRENT_TAG}$" | head -1 || echo "")
|
||||
if [ -n "$PREV_TAG" ]; then
|
||||
git-cliff --config cliff.toml --tag "$CURRENT_TAG" --strip all > /tmp/release_body.md || true
|
||||
# Generate full CHANGELOG.md from all tags
|
||||
git-cliff --config cliff.toml --output CHANGELOG.md
|
||||
else
|
||||
echo "No previous tag found, generating from git commits"
|
||||
git log --pretty=format:"- %s" > /tmp/release_body.md || true
|
||||
git-cliff --config cliff.toml --output CHANGELOG.md
|
||||
fi
|
||||
echo "=== Release body preview ==="
|
||||
cat /tmp/release_body.md
|
||||
|
||||
@ -337,7 +337,9 @@ pub async fn initiate_oauth(
|
||||
pending_approvals,
|
||||
clusters: Arc::new(tokio::sync::Mutex::new(std::collections::HashMap::new())),
|
||||
port_forwards: Arc::new(tokio::sync::Mutex::new(std::collections::HashMap::new())),
|
||||
refresh_registry: Arc::new(tokio::sync::Mutex::new(crate::kube::RefreshRegistry::new())),
|
||||
refresh_registry: Arc::new(tokio::sync::Mutex::new(
|
||||
crate::kube::RefreshRegistry::new(),
|
||||
)),
|
||||
};
|
||||
while let Some(callback) = callback_rx.recv().await {
|
||||
tracing::info!("Received OAuth callback for state: {}", callback.state);
|
||||
|
||||
@ -61,12 +61,9 @@ pub async fn add_cluster(
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
pub async fn remove_cluster(
|
||||
id: String,
|
||||
state: State<'_, AppState>,
|
||||
) -> Result<(), String> {
|
||||
pub async fn remove_cluster(id: String, state: State<'_, AppState>) -> Result<(), String> {
|
||||
let mut clusters = state.clusters.lock().await;
|
||||
|
||||
|
||||
if clusters.remove(&id).is_none() {
|
||||
return Err(format!("Cluster {id} not found"));
|
||||
}
|
||||
@ -75,11 +72,9 @@ pub async fn remove_cluster(
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
pub async fn list_clusters(
|
||||
state: State<'_, AppState>,
|
||||
) -> Result<Vec<ClusterInfo>, String> {
|
||||
pub async fn list_clusters(state: State<'_, AppState>) -> Result<Vec<ClusterInfo>, String> {
|
||||
let clusters = state.clusters.lock().await;
|
||||
|
||||
|
||||
let cluster_list: Vec<ClusterInfo> = clusters
|
||||
.values()
|
||||
.map(|c| ClusterInfo {
|
||||
@ -99,7 +94,7 @@ pub async fn start_port_forward(
|
||||
state: State<'_, AppState>,
|
||||
) -> Result<PortForwardResponse, String> {
|
||||
let session_id = uuid::Uuid::now_v7().to_string();
|
||||
|
||||
|
||||
let session = crate::kube::PortForwardSession::new(
|
||||
session_id.clone(),
|
||||
request.cluster_id.clone(),
|
||||
@ -127,12 +122,9 @@ pub async fn start_port_forward(
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
pub async fn stop_port_forward(
|
||||
id: String,
|
||||
state: State<'_, AppState>,
|
||||
) -> Result<(), String> {
|
||||
pub async fn stop_port_forward(id: String, state: State<'_, AppState>) -> Result<(), String> {
|
||||
let mut port_forwards = state.port_forwards.lock().await;
|
||||
|
||||
|
||||
if let Some(session) = port_forwards.get_mut(&id) {
|
||||
session.stop();
|
||||
Ok(())
|
||||
@ -146,7 +138,7 @@ pub async fn list_port_forwards(
|
||||
state: State<'_, AppState>,
|
||||
) -> Result<Vec<PortForwardResponse>, String> {
|
||||
let port_forwards = state.port_forwards.lock().await;
|
||||
|
||||
|
||||
let forwards: Vec<PortForwardResponse> = port_forwards
|
||||
.values()
|
||||
.map(|s| PortForwardResponse {
|
||||
|
||||
@ -6,12 +6,7 @@ pub struct ClusterClient {
|
||||
}
|
||||
|
||||
impl ClusterClient {
|
||||
pub fn new(
|
||||
id: String,
|
||||
name: String,
|
||||
context: String,
|
||||
server_url: String,
|
||||
) -> Self {
|
||||
pub fn new(id: String, name: String, context: String, server_url: String) -> Self {
|
||||
Self {
|
||||
id,
|
||||
name,
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
use std::collections::HashMap;
|
||||
use tokio::sync::RwLock;
|
||||
use std::sync::Arc;
|
||||
use tokio::sync::RwLock;
|
||||
|
||||
pub struct RefreshRegistry {
|
||||
domains: HashMap<String, Domain>,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user