chore: Update BPDM version #504
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
# ############################################################################# | |
# Copyright (c) 2023,2024 Contributors to the Eclipse Foundation | |
# | |
# See the NOTICE file(s) distributed with this work for additional | |
# information regarding copyright ownership. | |
# | |
# This program and the accompanying materials are made available under the | |
# terms of the Apache License, Version 2.0 which is available at | |
# https://www.apache.org/licenses/LICENSE-2.0. | |
# | |
# Unless required by applicable law or agreed to in writing, software | |
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |
# License for the specific language governing permissions and limitations | |
# under the License. | |
# | |
# SPDX-License-Identifier: Apache-2.0 | |
# ############################################################################# | |
--- | |
name: Helm Checks (Lint, Install) | |
on: | |
pull_request: | |
paths: | |
- 'charts/**' | |
- '!**/README.md' | |
# branches: | |
# - main | |
workflow_dispatch: | |
inputs: | |
node_image: | |
description: 'kindest/node image for k8s kind cluster' | |
# k8s version from 3.1 release as default | |
default: 'kindest/node:v1.27.3' | |
required: false | |
type: string | |
## Skip upgrade for now until a working chart is released | |
#upgrade_from: | |
# description: 'chart version to upgrade from' | |
# # chart version from 3.1 release as default | |
# default: 'x.x.x' | |
# required: false | |
# type: string | |
helm_version: | |
description: 'helm version to test (default = latest)' | |
default: 'latest' | |
required: false | |
type: string | |
jobs: | |
list-changed: | |
runs-on: ubuntu-latest | |
outputs: | |
changed: "${{ steps.list-changed.outputs.changed }}" | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up Helm | |
uses: azure/setup-helm@b7246b12e77f7134dc2d460a3d5bad15bbe29390 # v4.1.0 | |
with: | |
version: v3.12.1 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10' | |
check-latest: true | |
- name: Set up chart-testing | |
uses: helm/[email protected] | |
- name: Set target branch | |
id: set-target-branch | |
run: | | |
if [ -n "${{ github.event.pull_request.base.ref }}" ]; then | |
echo "target-branch=${{ github.event.pull_request.base.ref }}" >> "$GITHUB_OUTPUT" | |
else | |
echo "target-branch=${{ github.event.repository.default_branch }}" >> "$GITHUB_OUTPUT" | |
fi | |
- name: Run chart-testing (list-changed) | |
id: list-changed | |
run: | | |
changed=$(ct list-changed --target-branch ${{ steps.set-target-branch.outputs.target-branch }}) | |
if [[ -n "$changed" ]]; then | |
echo "changed=true" >> $GITHUB_OUTPUT | |
fi | |
lint-test: | |
runs-on: ubuntu-latest | |
needs: [list-changed] | |
if: ${{ github.event_name != 'pull_request' || needs.list-changed.outputs.changed == 'true' }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Kubernetes KinD Cluster | |
uses: container-tools/kind-action@0ad70e2299366b0e1552c7240f4e4567148f723e #v2.0.4 | |
with: | |
# upgrade version, default (v0.17.0) uses node image v1.21.1 and doesn't work with more recent node image versions | |
version: v0.20.0 | |
# default value for event_name != workflow_dispatch | |
node_image: ${{ github.event.inputs.node_image || 'kindest/node:v1.27.3' }} | |
- name: Informational - describe node | |
run: kubectl describe node | |
# Pull and build Jena Fuseki DB for semantic-hub | |
- name: Pull Fuseki sources | |
run: | | |
curl https://repo1.maven.org/maven2/org/apache/jena/jena-fuseki-docker/4.7.0/jena-fuseki-docker-4.7.0.zip > ./jena-fuseki.zip | |
unzip jena-fuseki.zip | |
- name: Build and push Fuseki DB | |
uses: docker/build-push-action@4a13e500e55cf31b7a5d59a38ab2040ab0f42f56 | |
with: | |
context: jena-fuseki-docker-4.7.0 | |
push: true | |
tags: kind-registry:5000/jena-fuseki-docker:4.7.0 | |
build-args: JENA_VERSION=4.7.0 | |
- name: Build simple data backend | |
uses: docker/build-push-action@4a13e500e55cf31b7a5d59a38ab2040ab0f42f56 # v5.1.0 | |
with: | |
context: ./simple-data-backend/ | |
push: true | |
tags: kind-registry:5000/simple-data-backend:testing | |
- name: Build init container | |
uses: docker/build-push-action@4a13e500e55cf31b7a5d59a38ab2040ab0f42f56 # v5.1.0 | |
with: | |
context: ./init-container/ | |
push: true | |
tags: kind-registry:5000/init-container:testing | |
- name: Build iatp mock | |
uses: docker/build-push-action@4a13e500e55cf31b7a5d59a38ab2040ab0f42f56 # v5.1.0 | |
with: | |
context: ./iatp-mock/ | |
push: true | |
tags: kind-registry:5000/iatp-mock:testing | |
- name: Set up Helm | |
uses: azure/setup-helm@b7246b12e77f7134dc2d460a3d5bad15bbe29390 # v4.1.0 | |
with: | |
version: ${{ github.event.inputs.helm_version || 'latest' }} | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10' | |
check-latest: true | |
- name: Set target branch | |
id: set-target-branch | |
run: | | |
if [ -n "${{ github.event.pull_request.base.ref }}" ]; then | |
echo "target-branch=${{ github.event.pull_request.base.ref }}" >> "$GITHUB_OUTPUT" | |
else | |
echo "target-branch=${{ github.event.repository.default_branch }}" >> "$GITHUB_OUTPUT" | |
fi | |
- name: Set up chart-testing | |
uses: helm/[email protected] | |
- name: Lint chart | |
run: ct lint --validate-maintainers=false --target-branch ${{ steps.set-target-branch.outputs.target-branch }} | |
- name: Download chart dependencies (recursive) | |
shell: bash | |
run: hack/helm-dependencies.bash | |
- name: Install chart and run tests (simple-data-backend) | |
run: ct install --charts charts/simple-data-backend --target-branch ${{ steps.set-target-branch.outputs.target-branch }} --helm-extra-set-args "--set image.repository=kind-registry:5000/simple-data-backend --set image.tag=testing" | |
- name: Install chart and run tests (tx-data-provider) | |
run: ct install --charts charts/tx-data-provider --target-branch ${{ steps.set-target-branch.outputs.target-branch }} | |
- name: Install chart for data exchange (umbrella) | |
run: | | |
helm dep up charts/tx-data-provider | |
helm dep up charts/umbrella | |
helm install umbrella charts/umbrella --namespace data-exchange --create-namespace --debug --timeout 10m \ | |
-f charts/values-test-data-exchange.yaml | |
helm uninstall umbrella --namespace data-exchange | |
- name: Install chart for data exchange with iatp-mock (umbrella) | |
run: | | |
helm dep up charts/tx-data-provider | |
helm dep up charts/umbrella | |
helm install umbrella charts/umbrella --namespace data-exchange --create-namespace --debug --timeout 10m \ | |
-f charts/values-test-data-exchange-iatp-mock.yaml -f charts/values-test-iam-init-container.yaml \ | |
--set iatpmock.image.repository=kind-registry:5000/iatp-mock --set iatpmock.image.tag=testing | |
helm uninstall umbrella --namespace data-exchange | |
- name: Install chart for shared services one (umbrella) | |
run: | | |
helm install umbrella charts/umbrella -f charts/values-test-shared-services-1.yaml -f charts/values-test-iam-init-container.yaml --namespace shared-services --create-namespace --debug --timeout 10m | |
helm uninstall umbrella --namespace shared-services | |
- name: Install chart for shared services two (umbrella) | |
run: | | |
helm install umbrella charts/umbrella -f charts/values-test-shared-services-2.yaml -f charts/values-test-iam-init-container.yaml --namespace shared-services --create-namespace --debug --timeout 10m --set semantic-hub.graphdb.image=kind-registry:5000/jena-fuseki-docker:4.7.0 | |
helm uninstall umbrella --namespace shared-services | |
## Skip upgrade for now until a working chart is released | |
#- name: Run helm upgrade | |
# run: | | |
# helm repo add bitnami https://charts.bitnami.com/bitnami | |
# helm repo add tractusx-dev https://eclipse-tractusx.github.io/charts/dev | |
# helm install [NAME] tractusx-dev/[CHART] --version ${{ github.event.inputs.upgrade_from || 'x.x.x' }} | |
# helm dependency update charts/[CHART] | |
# helm upgrade [NAME] charts/[CHART] | |
#kyverno: | |
# runs-on: ubuntu-latest | |
# needs: [list-changed] | |
# if: ${{ github.event_name != 'pull_request' || needs.list-changed.outputs.changed == 'true' }} | |
# steps: | |
# - name: Checkout | |
# uses: actions/checkout@v4 | |
# | |
# - name: Install Helm | |
# uses: azure/setup-helm@v3 | |
# with: | |
# version: ${{ github.event.inputs.helm_version || 'latest' }} | |
# token: ${{ secrets.GITHUB_TOKEN }} | |
# | |
# - name: Download chart dependencies (recursive) | |
# shell: bash | |
# run: hack/helm-dependencies.bash | |
# | |
# - name: Create Helm template | |
# run: | | |
# helm template chart-template charts/umbrella > charts/umbrella-template.yaml | |
# | |
# - name: Install Kyverno CLI | |
# uses: kyverno/[email protected] | |
# | |
# - name: Test new resources against existing policies | |
# run: kyverno apply .github/kyverno-policies/ -r charts/umbrella-template.yaml |