Skip to content

add LICENSE file to repo instead of downloading it via cekit for kn workflow cli image #107

add LICENSE file to repo instead of downloading it via cekit for kn workflow cli image

add LICENSE file to repo instead of downloading it via cekit for kn workflow cli image #107

Workflow file for this run

name: E2E checks
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths-ignore:
- "LICENSE"
- "**/.gitignore"
- "**.md"
- "**.adoc"
- "*.txt"
- "docsimg/**"
- ".ci/jenkins/**"
env:
GO_VERSION: 1.21
PYTHON_VERSION: "3.10"
KIND_VERSION: v0.20.0
OPERATOR_IMAGE_NAME: "127.0.0.1:5001/kogito-serverless-operator:0.0.1"
jobs:
e2e:
concurrency:
group: sonataflow-operator-e2e-tests-${{ github.head_ref }}
cancel-in-progress: true
timeout-minutes: 120
runs-on: ubuntu-latest
name: End-to-end tests (Kind)
steps:
- name: Install dependencies
run: |
sudo apt-get update && \
sudo apt-get -y install --no-install-recommends \
btrfs-progs \
libgpgme-dev \
libbtrfs-dev \
libdevmapper-dev \
libkrb5-dev
- name: Checkout Code
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}
- name: Install Go
uses: actions/setup-go@v5
with:
go-version: ${{ env.GO_VERSION }}
cache: true
- name: Setup Python for cekit
uses: actions/setup-python@v5
with:
python-version: ${{ env.PYTHON_VERSION }}
cache-dependency-path: images/requirements.txt
cache: 'pip'
- name: Install Cekit
run: |
pip install -r images/requirements.txt
cekit --version
- name: Setup Kind cluster
run: make KIND_VERSION=${{ env.KIND_VERSION }} create-cluster
- name: Set OPERATOR_IMAGE_NAME to point to Kind's local registry
run: echo "OPERATOR_IMAGE_NAME=${{ env.OPERATOR_IMAGE_NAME }}" >> $GITHUB_ENV
- name: Build and load operator image
run: |
make container-build BUILDER=docker IMG=${{ env.OPERATOR_IMAGE_NAME }}
kind load docker-image ${{ env.OPERATOR_IMAGE_NAME }}
- name: Check pods
run: |
kubectl version
kubectl get pods -A
- name: Deploy operator
run: |
make deploy IMG=${{ env.OPERATOR_IMAGE_NAME }}
kubectl wait pod -A -l control-plane=sonataflow-operator --for condition=Ready
- name: Run tests
run: make test-e2e
- name: Retrieve cluster events and list pods
if: failure()
run: |
kubectl get events
kubectl get pod -A
- name: Export kind logs
if: always()
run: |
mkdir -p /tmp/kind/logs
kind export logs --loglevel=debug /tmp/kind/logs
- name: Upload kind logs
if: always()
uses: actions/upload-artifact@v3
with:
name: kind-logs-${{ env.JOB_NAME }}-${{ github.run_id }}
path: /tmp/kind/logs
retention-days: 1