fix: use registry.i80.dk (Harbor) instead of ghcr.io
- classify.yml: build/push to registry.i80.dk/gitea/kreuzberg-classify - classify.nomad: pull from registry.i80.dk with Harbor robot token from Consul KV
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
name: Deploy classify service
|
||||
name: Build and Deploy classify service
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -12,8 +12,7 @@ on:
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
REGISTRY: ghcr.io
|
||||
IMAGE_NAME: hjess/kreuzberg-classify
|
||||
SERVICE_NAME: classify
|
||||
|
||||
jobs:
|
||||
build-and-deploy:
|
||||
@@ -21,18 +20,28 @@ jobs:
|
||||
|
||||
env:
|
||||
PATH: /usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/sbin:/bin:/snap/bin
|
||||
DOCKER_HOST: unix:///var/run/docker.sock
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Log in to Docker Registry
|
||||
run: |
|
||||
echo "${{ secrets.HARBOR_ROBOT_TOKEN }}" | docker login registry.i80.dk -u "robot\$gitserver" --password-stdin
|
||||
|
||||
- name: Build Docker image
|
||||
run: |
|
||||
docker build -f Dockerfile.classify -t ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest .
|
||||
SHA=$(git rev-parse --short HEAD)
|
||||
docker build -f Dockerfile.classify \
|
||||
-t registry.i80.dk/gitea/kreuzberg-classify:latest \
|
||||
-t registry.i80.dk/gitea/kreuzberg-classify:$SHA .
|
||||
|
||||
- name: Push to registry
|
||||
- name: Push Docker image
|
||||
run: |
|
||||
docker push ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest
|
||||
SHA=$(git rev-parse --short HEAD)
|
||||
docker push registry.i80.dk/gitea/kreuzberg-classify:latest
|
||||
docker push registry.i80.dk/gitea/kreuzberg-classify:$SHA
|
||||
|
||||
- name: Validate Nomad job
|
||||
run: nomad job validate classify.nomad
|
||||
@@ -44,9 +53,10 @@ jobs:
|
||||
env:
|
||||
NOMAD_ADDR: "https://nomad.i80.dk:4646"
|
||||
|
||||
- name: Check deployment status
|
||||
- name: Wait for healthy allocation
|
||||
run: |
|
||||
sleep 10
|
||||
nomad job status classify
|
||||
sleep 15
|
||||
nomad job status ${SERVICE_NAME}
|
||||
nomad job allocs ${SERVICE_NAME}
|
||||
env:
|
||||
NOMAD_ADDR: "https://nomad.i80.dk:4646"
|
||||
|
||||
@@ -70,9 +70,13 @@ job "classify" {
|
||||
driver = "docker"
|
||||
|
||||
config {
|
||||
image = "ghcr.io/hjess/kreuzberg-classify:latest"
|
||||
image = "registry.i80.dk/gitea/kreuzberg-classify:latest"
|
||||
ports = ["http"]
|
||||
force_pull = true
|
||||
auth {
|
||||
username = "robot$gitserver"
|
||||
password = "${HARBOR_ROBOT_TOKEN}"
|
||||
}
|
||||
}
|
||||
|
||||
env {
|
||||
@@ -80,6 +84,14 @@ job "classify" {
|
||||
PORT = "${NOMAD_PORT_http}"
|
||||
}
|
||||
|
||||
template {
|
||||
data = <<EOH
|
||||
HARBOR_ROBOT_TOKEN="{{ key "harbor/robot/token" }}"
|
||||
EOH
|
||||
destination = "secrets/registry.env"
|
||||
env = true
|
||||
}
|
||||
|
||||
restart {
|
||||
attempts = 5
|
||||
interval = "10m"
|
||||
|
||||
Reference in New Issue
Block a user