Skip to content

Build AI4EOSC:dev docker image #258

Build AI4EOSC:dev docker image

Build AI4EOSC:dev docker image #258

name: Build AI4EOSC:dev docker image
on: workflow_dispatch
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Login to Harbor
uses: docker/login-action@v2
with:
registry: ${{ secrets.HARBOR_URL }}
username: ${{ secrets.HARBOR_USERNAME }}
password: ${{ secrets.HARBOR_TOKEN }}
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: 'Inject LLM API Key'
run: |
sed -i "s/llmApiKey: ''/llmApiKey: '${{ secrets.LLM_API_KEY }}'/" src/environments/environment.development.ts
- name: Build and push
uses: docker/build-push-action@v3
with:
context: .
push: true
tags: ${{ secrets.HARBOR_URL }}/ai4os/ai4eosc-dashboard:${{ github.ref_name}}-dev, ${{ secrets.DOCKERHUB_USERNAME }}/ai4eosc-dashboard:${{ github.ref_name}}-dev
file: docker/ai4eosc/dev/Dockerfile
secret-files: |
npmrc=/home/runner/.npmrc
- name: Send Webhook to Deploy Dashboard
env:
SECRET: ${{ secrets.WEBHOOK_SECRET }}
PAYLOAD: ${{ secrets.WEBHOOK_PAYLOAD }}
run: |
HASH=$(echo -n "$PAYLOAD" | openssl dgst -sha1 -hmac "$SECRET" | sed 's/^.* //')
curl -X POST https://webhooks.cloud.ai4eosc.eu/hooks/deploy-dashboard-dev \
-H 'Content-Type: application/json' \
-H "X-Hub-Signature: sha1=$HASH" \
-d "$PAYLOAD"