Something.

This commit is contained in:
rony5394
2026-02-23 15:39:57 +01:00
parent 136bb4c5b8
commit 9751a602cc
6 changed files with 67 additions and 11 deletions

View File

@@ -13,6 +13,7 @@ import (
"net/http"
"github.com/docker/docker/api/types/network"
"github.com/docker/docker/api/types/swarm"
"github.com/docker/docker/client"
)
@@ -53,6 +54,16 @@ func Run(){
http.HandleFunc("/services", listServices);
http.HandleFunc("/prepare", prepare);
http.HandleFunc("/cleanup", cleanup);
ApiClient.NetworkCreate(context.Background(), "blazenaPohar", network.CreateOptions{
Attachable: true,
// Internal: true,
Driver: "overlay",
Labels: map[string]string{
"blazena.pohar": "true",
},
});
go func(){
err = server.ListenAndServe();
if err == http.ErrServerClosed {
@@ -69,6 +80,7 @@ func Run(){
<-ctx.Done();
fmt.Println("Stopping http server.");
server.Close();
ApiClient.NetworkRemove(context.Background(), "blazenaPohar");
fmt.Println("Exiting!");
}

View File

@@ -51,9 +51,7 @@ func prepare(w http.ResponseWriter, r *http.Request){
maxConcurrent := uint64(1);
totalCompletions := uint64(1);
targetNode := labels["blazena.node"];
helperCommand := `apk add openssh rsync && \
ssh-keygen -t ed25519 -f /host_key && \
mkdir -p /root/.ssh/ && \
helperCommand := `ssh-keygen -t ed25519 -f /host_key && \
echo "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIByYbl8vu946LPycSO5pBohq3vMvvl+wX7snu1Bqpd7p test" > /root/.ssh/authorized_keys && \
/usr/sbin/sshd -h /host_key -p 22 -D`;
@@ -70,7 +68,7 @@ func prepare(w http.ResponseWriter, r *http.Request){
},
TaskTemplate: swarm.TaskSpec{
ContainerSpec: &swarm.ContainerSpec{
Image: "docker.io/library/alpine:latest",
Image: "registry.lan.ronycloud.dev/blazena/helper:latest",
Command: []string{"sh", "-c", helperCommand},
Mounts: []mount.Mount{
mount.Mount{

View File

@@ -18,6 +18,7 @@ func scaleDown(serviceId string){
newScale := uint64(0);
updatedSpec.Mode.Replicated.Replicas = &newScale;
updatedSpec.Labels["blazena.scaledDown"] = "true";
scale.Store(serviceId, *originalScale);
@@ -46,6 +47,7 @@ func scaleUp(serviceId string){
updatedSpec := inspectresoult.Spec;
updatedSpec.Mode.Replicated.Replicas = &originalScaleChecked;
delete(updatedSpec.Labels, "blazena.scaledDown");
ApiClient.ServiceUpdate(context.Background(), serviceId, inspectresoult.Version, updatedSpec, swarm.ServiceUpdateOptions{});
}