Remove trailing white spaces from application.properties #583
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: MTA Workflow end to end tests | |
on: | |
workflow_dispatch: | |
pull_request: | |
branches: | |
- main | |
paths: | |
- 'mta/**' | |
- 'pipeline/**' | |
- 'e2e/mta.sh' | |
- '!mta/*.svg' | |
- .github/workflows/mta-e2e.yaml | |
- .github/workflows/main.yml | |
jobs: | |
build: | |
uses: ./.github/workflows/main.yml | |
secrets: inherit | |
with: | |
workflow_id: mta | |
it_mode: true | |
run-e2e: | |
runs-on: ubuntu-24.04 | |
needs: build | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Create k8s Kind Cluster | |
uses: helm/[email protected] | |
with: | |
cluster_name: kind | |
- name: Install Konveyor 0.2 (MTA upstream equivalent to 6.2) | |
run: | | |
kubectl apply -f https://raw.githubusercontent.com/operator-framework/operator-lifecycle-manager/master/deploy/upstream/quickstart/crds.yaml | |
# give the apiserver time | |
sleep 5s | |
kubectl apply -f https://raw.githubusercontent.com/operator-framework/operator-lifecycle-manager/master/deploy/upstream/quickstart/olm.yaml | |
# install konveyor operator | |
# version 0.2 is MTA 6.2 and 0.3 is 7.x | |
kubectl create -f https://operatorhub.io/install/konveyor-0.2/konveyor-operator.yaml | |
# give the apiserver time | |
echo "sleeping 120 seconds to give time for the operator to pull images and start" | |
sleep 120s | |
kubectl get csv -A | |
# TODO its a bit smelly that the csv name is coded here. | |
kubectl wait --for=jsonpath='{.status.phase}=Succeeded' -n my-konveyor-operator csv/konveyor-operator.v0.2.1 | |
kubectl get pods -A | |
kubectl wait --for=condition=Ready=true pods -l "name=tackle-operator" -n my-konveyor-operator --timeout=120s | |
kubectl get crds | |
kubectl create -f - << EOF | |
kind: Tackle | |
apiVersion: tackle.konveyor.io/v1alpha1 | |
metadata: | |
name: tackle | |
namespace: my-konveyor-operator | |
spec: | |
feature_auth_required: false | |
hub_database_volume_size: 1Gi | |
hub_bucket_volume_size: 1Gi | |
EOF | |
kubectl get pods -n my-konveyor-operator | |
sleep 60s | |
kubectl get tackle -n my-konveyor-operator -o yaml | |
echo "wait for tackle ui to be ready" | |
kubectl get pods -n my-konveyor-operator | |
sleep 30s | |
kubectl wait --for=condition=Ready=true pods -l "app.kubernetes.io/name=tackle-ui" -n my-konveyor-operator --timeout=120s | |
# now MTA workflow can execute agains tackle-ui.my-konveyor-operator.svc:8080 | |
- name: Deploy Orchestrator-k8s helm chart | |
run: | | |
helm repo add orchestrator https://parodos-dev.github.io/orchestrator-helm-chart | |
helm install orchestrator orchestrator/orchestrator-k8s | |
kubectl get sfp -A | |
kubectl wait --for=condition=Ready=true pods -l "app.kubernetes.io/name=backstage" --timeout=10m | |
kubectl get pods -o wide | |
kubectl wait --for=condition=Ready=true pods -l "app=sonataflow-platform" --timeout=120s | |
#give the data-index time to register and start. | |
sleep 1m | |
kubectl get pods | |
kubectl get svc | |
- name: Deploy psql | |
run: | | |
kubectl create secret generic sonataflow-psql-postgresql --from-literal=postgres-username=postgres --from-literal=postgres-password=postgres | |
helm repo add bitnami https://charts.bitnami.com/bitnami | |
helm install sonataflow-psql bitnami/postgresql --version 12.12.10 \ | |
-f https://raw.githubusercontent.com/parodos-dev/orchestrator-helm-chart/main/postgresql/values.yaml | |
- name: Download sonataflow artifacts generated manifests | |
uses: actions/download-artifact@v4 | |
with: | |
name: serverless-workflow-mta-manifests | |
path: manifests | |
- name: Download serverless workflows mta image | |
uses: actions/download-artifact@v4 | |
with: | |
name: serverless-workflow-mta-${{ github.sha }}.tar | |
- name: Load mta workflow image to Kind | |
run: | | |
kind load image-archive serverless-workflow-mta-${{ github.sha }}.tar | |
- name: Deploy MTA serverless workflow | |
run: | | |
# Set the endpoint to the tackle-ui service | |
yq --inplace '.spec.podTemplate.container.env |= ( . + [{"name": "QUARKUS_REST_CLIENT_MTA_JSON_URL", "value": "http://tackle-ui.my-konveyor-operator.svc:8080/hub"}, {"name": "BACKSTAGE_NOTIFICATIONS_URL", "value": "http://orchestrator-backstage.default.svc.cluster.local:7007/"}] )' manifests/0?-sonataflow_mtaanalysis.yaml | |
# reuse orchestrator psql persistence for e2e tests | |
kubectl patch secret orchestrator-postgresql --patch='{"stringData": { "postgres-username": "postgres" }}' | |
yq --inplace ".spec.persistence = ( | |
{ | |
\"postgresql\": { | |
\"secretRef\": { | |
\"name\": \"orchestrator-postgresql\", | |
\"userKey\": \"postgres-username\", | |
\"passwordKey\": \"postgres-password\" | |
}, | |
\"serviceRef\": { | |
\"name\": \"orchestrator-postgresql\", | |
\"port\": 5432, | |
\"databaseName\": \"postgres\", | |
\"databaseSchema\": \"mta\" | |
} | |
} | |
} | |
)" manifests/0?-sonataflow_mtaanalysis.yaml | |
echo "manifests/02-configmap_mtaanalysis-props.yaml" | |
cat manifests/0?-configmap_mtaanalysis-props.yaml | |
echo "---" | |
echo "manifests/0?-sonataflow_mtaanalysis.yaml" | |
cat manifests/0?-sonataflow_mtaanalysis.yaml | |
echo "---" | |
# Set notification external access token | |
echo " Set notification external access token" | |
BACKEND_SECRET=$(kubectl get secret orchestrator-auth -o jsonpath={.data.backend-secret}) | |
yq --inplace ".data.NOTIFICATIONS_BEARER_TOKEN=\"$BACKEND_SECRET\"" manifests/0?-secret_mtaanalysis.yaml # notsecret | |
cat manifests/0?-secret_mtaanalysis.yaml | |
# deploy the manifests created by the ${{ steps.build-image.outputs.image }} image | |
kubectl apply -f manifests/ | |
sleep 5 | |
kubectl get deployment mtaanalysis -o jsonpath={.spec.template.spec.containers[]} | |
# give the pod time to start | |
sleep 15 | |
kubectl get pods -o wide | |
kubectl wait --for=condition=Ready=true pods -l "app=mtaanalysis" --timeout=5m | |
- name: Run e2e script | |
run: | | |
export BACKEND_SECRET=$(kubectl get secret orchestrator-auth -o jsonpath={.data.backend-secret} | base64 -d) | |
e2e/mta.sh | |
- name: Export kind Logs | |
if: always() | |
run: kind export logs ./kind_logs | |
- name: Upload Kind Logs | |
uses: actions/upload-artifact@v4 | |
# Always run this, even if one of th previous steps failed. | |
if: always() | |
with: | |
name: kind-logs | |
path: ./kind_logs/ |