6293fa89e3
Build and Push Docker Images / build (push) Failing after 1m36s
- New cv-search-models shared library: EF entities + CvSearchDbContext for cvSearch schema (JobSearchTokens, JobSearchSessions, JobSearchResults tables) - New cv-search-job worker service: polls DB for pending sessions, scrapes job boards via configurable HTML scraping, runs LLM scoring via cv-matcher-api, emails ranked results - cv-matcher-api: JobTokenService creates one-time tokens; JobSearchController handles link clicks and creates sessions - api: proxies job-search start endpoint, appends job search link to match result email - CI workflow updated to build and push myai-cv-search-job:staging image - CLAUDE.md documentation added for all affected services Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
82 lines
2.5 KiB
YAML
82 lines
2.5 KiB
YAML
name: Build and Push Docker Images
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
env:
|
|
GIT_HOST: git.easysoft.ro
|
|
REGISTRY_HOST: registry.easysoft.ro
|
|
API_IMAGE: apps/myai-api
|
|
CV_MATCHER_API_IMAGE: apps/myai-cv-matcher-api
|
|
RAG_API_IMAGE: apps/myai-rag-api
|
|
WEB_IMAGE: apps/myai-web
|
|
CV_CLEANUP_JOB_IMAGE: apps/myai-cv-cleanup-job
|
|
CV_SEARCH_JOB_IMAGE: apps/myai-cv-search-job
|
|
IMAGE_TAG: staging
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: host
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
env:
|
|
TOKEN: ${{ secrets.REPO_TOKEN }}
|
|
run: |
|
|
git clone "http://gelu:${TOKEN}@${GIT_HOST}:3000/${GITHUB_REPOSITORY}.git" .
|
|
|
|
- name: Login to registry
|
|
run: |
|
|
echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login "${REGISTRY_HOST}" \
|
|
-u "${{ secrets.REGISTRY_USER }}" \
|
|
--password-stdin
|
|
|
|
- name: Build API image
|
|
run: |
|
|
docker build -f Apis/api/Dockerfile -t "${REGISTRY_HOST}/${API_IMAGE}:${IMAGE_TAG}" .
|
|
|
|
- name: Build CV Matcher API image
|
|
run: |
|
|
docker build -f Apis/cv-matcher-api/Dockerfile -t "${REGISTRY_HOST}/${CV_MATCHER_API_IMAGE}:${IMAGE_TAG}" .
|
|
|
|
- name: Build RAG API image
|
|
run: |
|
|
docker build -f Apis/rag-api/Dockerfile -t "${REGISTRY_HOST}/${RAG_API_IMAGE}:${IMAGE_TAG}" .
|
|
|
|
- name: Build Web image
|
|
run: |
|
|
docker build -f web/Dockerfile -t "${REGISTRY_HOST}/${WEB_IMAGE}:${IMAGE_TAG}" .
|
|
|
|
- name: Build CV cleanup job image
|
|
run: |
|
|
docker build -f Jobs/cv-cleanup-job/Dockerfile -t "${REGISTRY_HOST}/${CV_CLEANUP_JOB_IMAGE}:${IMAGE_TAG}" .
|
|
|
|
- name: Build CV search job image
|
|
run: |
|
|
docker build -f Jobs/cv-search-job/Dockerfile -t "${REGISTRY_HOST}/${CV_SEARCH_JOB_IMAGE}:${IMAGE_TAG}" .
|
|
|
|
- name: Push API image
|
|
run: |
|
|
docker push "${REGISTRY_HOST}/${API_IMAGE}:${IMAGE_TAG}"
|
|
|
|
- name: Push CV Matcher API image
|
|
run: |
|
|
docker push "${REGISTRY_HOST}/${CV_MATCHER_API_IMAGE}:${IMAGE_TAG}"
|
|
|
|
- name: Push RAG API image
|
|
run: |
|
|
docker push "${REGISTRY_HOST}/${RAG_API_IMAGE}:${IMAGE_TAG}"
|
|
|
|
- name: Push Web image
|
|
run: |
|
|
docker push "${REGISTRY_HOST}/${WEB_IMAGE}:${IMAGE_TAG}"
|
|
|
|
- name: Push CV cleanup job image
|
|
run: |
|
|
docker push "${REGISTRY_HOST}/${CV_CLEANUP_JOB_IMAGE}:${IMAGE_TAG}"
|
|
|
|
- name: Push CV search job image
|
|
run: |
|
|
docker push "${REGISTRY_HOST}/${CV_SEARCH_JOB_IMAGE}:${IMAGE_TAG}" |