Update docker-image.yml
This commit is contained in:
29
.github/workflows/docker-image.yml
vendored
29
.github/workflows/docker-image.yml
vendored
@@ -6,9 +6,6 @@ on:
|
|||||||
pull_request:
|
pull_request:
|
||||||
branches: [ "main" ]
|
branches: [ "main" ]
|
||||||
|
|
||||||
env:
|
|
||||||
VERSION: "$(cat package.json | jq -r '.version')"
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-and-push:
|
build-and-push:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@@ -20,7 +17,7 @@ jobs:
|
|||||||
# Stap 2: Versienummer ophalen uit package.json
|
# Stap 2: Versienummer ophalen uit package.json
|
||||||
- name: Extract Angular version
|
- name: Extract Angular version
|
||||||
id: get_version
|
id: get_version
|
||||||
run: echo "VERSION=$(cat package.json | jq -r '.version')" >> $GITHUB_ENV
|
run: echo "::set-output name=version::$(cat package.json | jq -r '.version')"
|
||||||
|
|
||||||
# Stap 3: Inloggen bij Docker Hub
|
# Stap 3: Inloggen bij Docker Hub
|
||||||
- name: Log in to Docker Hub
|
- name: Log in to Docker Hub
|
||||||
@@ -31,11 +28,11 @@ jobs:
|
|||||||
|
|
||||||
# Stap 4: Docker-image bouwen en taggen met Angular-versie
|
# Stap 4: Docker-image bouwen en taggen met Angular-versie
|
||||||
- name: Build the Docker image
|
- name: Build the Docker image
|
||||||
run: docker build . --file Dockerfile --tag veenm/weetikveel:${{ env.VERSION }} --tag veenm/weetikveel:latest
|
run: docker build . --file Dockerfile --tag veenm/weetikveel:${{ steps.get_version.outputs.version }} --tag veenm/weetikveel:latest
|
||||||
|
|
||||||
# Stap 5: Docker-image pushen naar Docker Hub (huidige versie tag)
|
# Stap 5: Docker-image pushen naar Docker Hub (huidige versie tag)
|
||||||
- name: Push the Docker image (version)
|
- name: Push the Docker image (version)
|
||||||
run: docker push veenm/weetikveel:${{ env.VERSION }}
|
run: docker push veenm/weetikveel:${{ steps.get_version.outputs.version }}
|
||||||
|
|
||||||
# Stap 6: Docker-image pushen naar Docker Hub (latest tag)
|
# Stap 6: Docker-image pushen naar Docker Hub (latest tag)
|
||||||
- name: Push the Docker image (latest)
|
- name: Push the Docker image (latest)
|
||||||
@@ -46,10 +43,14 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
# Stap 1: Code ophalen
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Use Variable
|
# Stap 2: Gebruik de versie uit de vorige job
|
||||||
run: echo "${{ env.VERSION }}"
|
- name: Read Version
|
||||||
# Stap 1: Maak verbinding via SSH naar de TrueNAS SCALE server
|
run: echo "De versie is: ${{ needs.build-and-push.outputs.version }}"
|
||||||
|
|
||||||
|
# Stap 3: Maak verbinding via SSH naar de TrueNAS SCALE server
|
||||||
- name: SSH into TrueNAS SCALE
|
- name: SSH into TrueNAS SCALE
|
||||||
uses: appleboy/ssh-action@v0.1.10
|
uses: appleboy/ssh-action@v0.1.10
|
||||||
with:
|
with:
|
||||||
@@ -58,18 +59,18 @@ jobs:
|
|||||||
password: ${{ secrets.TRUENAS_PASSWORD }}
|
password: ${{ secrets.TRUENAS_PASSWORD }}
|
||||||
port: ${{ secrets.TRUENAS_PORT }}
|
port: ${{ secrets.TRUENAS_PORT }}
|
||||||
script: |
|
script: |
|
||||||
# Stap 2: K3s Kubernetes-configuratie instellen
|
# Kubernetes-configuratie instellen
|
||||||
export KUBEVERSION=/etc/rancher/k3s/k3s.yaml
|
export KUBEVERSION=/etc/rancher/k3s/k3s.yaml
|
||||||
export KUBECONFIG=$KUBEVERSION
|
export KUBECONFIG=$KUBEVERSION
|
||||||
|
|
||||||
|
# Update deployment
|
||||||
k3s kubectl apply -f deployment.yaml
|
k3s kubectl apply -f deployment.yaml
|
||||||
|
|
||||||
k3s kubectl apply -f service.yaml
|
k3s kubectl apply -f service.yaml
|
||||||
|
|
||||||
# Stap 4: Update de Kubernetes deployment (optioneel, vervang bestaande image)
|
# Update image in deployment
|
||||||
k3s kubectl set image deployment/weetikveel weetikveel=veenm/weetikveel:${{ env.VERSION }} --record
|
k3s kubectl set image deployment/weetikveel weetikveel=veenm/weetikveel:${{ needs.build-and-push.outputs.version }} --record
|
||||||
|
|
||||||
# Stap 5: Controleer de status van de pods en services
|
# Controle en status
|
||||||
k3s kubectl rollout status deployment/weetikveel
|
k3s kubectl rollout status deployment/weetikveel
|
||||||
k3s kubectl get pods
|
k3s kubectl get pods
|
||||||
k3s kubectl get service
|
k3s kubectl get service
|
||||||
|
|||||||
Reference in New Issue
Block a user