Fixed yaml code paste error

This commit is contained in:
Khwezi
2025-10-18 14:24:58 +02:00
parent 1d4199c450
commit d4b20fae41
2 changed files with 110 additions and 115 deletions

View File

@@ -4,17 +4,9 @@ type: kubernetes
name: build
clone:
disable: true
disable: false
steps:
- name: git clone
image: drone/git
environment:
REPO_URL: http://gitea-server.gitea.svc.cluster.local:3000/mngomalab/sampleapi.git
commands:
- git clone $REPO_URL .
- git checkout $DRONE_COMMIT
- name: dotnet restore
image: mcr.microsoft.com/dotnet/sdk:8.0
commands:
@@ -30,7 +22,6 @@ steps:
image: mcr.microsoft.com/dotnet/sdk:8.0
commands:
- dotnet test --configuration Release
---
kind: pipeline
type: kubernetes
@@ -43,14 +34,6 @@ clone:
disable: true
steps:
- name: git clone
image: drone/git
environment:
REPO_URL: http://gitea-server.gitea.svc.cluster.local:3000/mngomalab/sampleapi.git
commands:
- git clone $REPO_URL .
- git checkout $DRONE_COMMIT
- name: dotnet publish
image: mcr.microsoft.com/dotnet/sdk:8.0
commands:
@@ -70,7 +53,6 @@ steps:
from_secret: registry-password
dockerfile: Dockerfile
context: ./SampleApi/bin/Release/net8.0/publish/
---
kind: pipeline
type: kubernetes
@@ -83,22 +65,17 @@ clone:
disable: true
steps:
- name: git clone
image: drone/git
environment:
REPO_URL: http://gitea-server.gitea.svc.cluster.local:3000/mngomalab/sampleapi.git
commands:
- git clone $REPO_URL .
- git checkout $DRONE_COMMIT
- name: deploy
image: danielgormly/drone-plugin-kube:0.0.1
- name: deploy via SSH
image: appleboy/drone-ssh
settings:
serviceAccountName: droneci-sa
template: ./manifests/deploy.yml
namespace: sampleapi
ca:
from_secret: k8s-cert
server: https://lead.mngoma.lab:6443
token:
from_secret: k8s-token
host: lead.mngoma.lab
username:
from_secret: host-username
password:
from_secret: host-password
port: 22
script:
- set -euo pipefail
- echo "Applying Kubernetes manifest via SSH..."
- cat ./manifests/deploy.yml | kubectl apply -f -
- echo "Manifest applied successfully."

View File

@@ -1,81 +1,99 @@
---
kind: pipeline
type: kubernetes
name: build
clone:
disable: false
steps:
- name: dotnet restore
image: mcr.microsoft.com/dotnet/sdk:8.0
commands:
- dotnet restore
- name: dotnet build
image: mcr.microsoft.com/dotnet/sdk:8.0
commands:
- dotnet build --configuration Release
- ls ./SampleApi/bin/Release/net8.0/
- name: dotnet test
image: mcr.microsoft.com/dotnet/sdk:8.0
commands:
- dotnet test --configuration Release
apiVersion: v1
kind: Namespace
metadata:
name: experiments
labels:
name: experiments
---
kind: pipeline
type: kubernetes
name: package
depends_on:
- build
clone:
disable: true
steps:
- name: dotnet publish
image: mcr.microsoft.com/dotnet/sdk:8.0
commands:
- dotnet publish --configuration Release
- ls ./SampleApi/bin/Release/net8.0/publish/
- name: docker build and push
image: plugins/docker
settings:
repo: registry-server.registry.svc.cluster.local:5000/sampleapi
auto_tag: true
registry: registry-server.registry.svc.cluster.local:5000
insecure: true
username:
from_secret: registry-username
password:
from_secret: registry-password
dockerfile: Dockerfile
context: ./SampleApi/bin/Release/net8.0/publish/
apiVersion: v1
kind: ConfigMap
metadata:
name: sampleapi-config
namespace: experiments
data:
appname: "SampleApi"
---
kind: pipeline
type: kubernetes
name: deploy
depends_on:
- package
clone:
disable: true
steps:
- name: deploy via SSH
image: appleboy/drone-ssh
settings:
host: lead.mngoma.lab
username:
from_secret: host-username
password:
from_secret: host-password
port: 22
script:
- set -euo pipefail
- echo "Applying Kubernetes manifest via SSH..."
- cat ./manifests/deploy.yml | kubectl apply -f -
- echo "Manifest applied successfully."
apiVersion: apps/v1
kind: Deployment
metadata:
name: sampleapi
namespace: experiments
labels:
app: sampleapi
spec:
replicas: 1
selector:
matchLabels:
app: sampleapi
template:
metadata:
labels:
app: sampleapi
spec:
containers:
- name: sampleapi
image: registry.registry.svc.cluster.local:5000/experiments/sampleapi:latest
imagePullPolicy: Always
ports:
- name: http
containerPort: 8080
- name: https
containerPort: 8081
resources:
requests:
memory: "128Mi"
cpu: "250m"
limits:
memory: "256Mi"
cpu: "500m"
---
apiVersion: v1
kind: Service
metadata:
name: sampleapi
namespace: experiments
spec:
type: ClusterIP
selector:
app: sampleapi
ports:
- name: http
port: 80
targetPort: 8080
- name: https
port: 443
targetPort: 8081
---
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: sampleapi-http
namespace: experiments
spec:
entryPoints:
- web
routes:
- match: Host(`sampleapi.apps.mngoma.lab`)
kind: Rule
services:
- name: sampleapi
port: 80
scheme: http
---
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: sampleapi-https
namespace: experiments
spec:
entryPoints:
- websecure
routes:
- match: Host(`sampleapi.apps.mngoma.lab`)
kind: Rule
services:
- name: sampleapi
port: 443
scheme: http
tls: {}