Add minikube testing #292
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: Release Charts | |
on: | |
push: | |
branches: | |
- main | |
tags: | |
- "*" | |
pull_request: | |
branches: | |
- main | |
env: | |
HELM_EXPERIMENTAL_OCI: 1 | |
jobs: | |
release: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Configure Git | |
run: | | |
git config user.name "$GITHUB_ACTOR" | |
git config user.email "[email protected]" | |
- name: Install Helm | |
uses: azure/setup-helm@v4 | |
with: | |
version: v3.13.3 | |
- name: Install python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3 | |
- name: Set up chart-testing | |
uses: helm/[email protected] | |
- name: Extract tag | |
id: extract_tag | |
run: | | |
version=$(grep '^version:' Chart.yaml | sed 's/"//g' | awk '{print $2}') | |
echo "Chart version is $version" | |
echo "CHART_VERSION=$version" >> $GITHUB_ENV | |
echo "CHART_VERSION=$version" >> $GITHUB_OUTPUT | |
working-directory: charts/vaas | |
- name: Run chart-testing (lint) | |
run: ct lint --validate-maintainers=false --charts charts/vaas | |
- name: Install Minikube | |
uses: manusa/[email protected] | |
with: | |
minikube version: v1.34.0 | |
kubernetes version: v1.30.0 | |
start args: --addons ingress | |
- name: Set up kubectl | |
uses: azure/setup-kubectl@v3 | |
with: | |
version: 'latest' | |
- name: Install Helm | |
uses: azure/setup-helm@v4 | |
with: | |
version: v3.13.3 | |
- name: Install NGINX Ingress Controller | |
run: | | |
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/main/deploy/static/provider/cloud/deploy.yaml | |
kubectl wait --namespace ingress-nginx \ | |
--for=condition=ready pod \ | |
--selector=app.kubernetes.io/component=controller \ | |
--timeout=300s | |
- name: Deploy Helm Chart | |
run: | | |
cat <<EOF > values-local.yaml | |
global: | |
imagePullSecrets: | |
- registry | |
secret: | |
dockerconfigjson: "${{ secrets.DOCKER_CONFIG_JSON }}" | |
cloud: | |
hashLookup: | |
enabled: false | |
allowlistLookup: | |
enabled: false | |
EOF | |
helm dep up charts/vaas | |
helm upgrade --install vaas charts/vaas -f values-local.yaml -n vaas --create-namespace --debug | |
- name: Verify Pods | |
run: | | |
kubectl get pods | |
kubectl wait --for=condition=ready pod -n vaas --timeout=300s --all | |
- name: Verify Services | |
run: | | |
kubectl get svc | |
kubectl wait --for=condition=ready svc -n vaas --timeout=300s --all | |
- name: Push chart | |
if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' | |
uses: appany/[email protected] | |
with: | |
name: vaas | |
repository: gdatasoftwareag/charts | |
tag: $CHART_VERSION | |
path: charts/vaas | |
registry: ghcr.io | |
registry_username: ${{ secrets.REGISTRY_USERNAME }} | |
registry_password: ${{ secrets.CR_TOKEN }} | |
update_dependencies: "true" | |
- name: create zipfile | |
run: zip -r vaas-helm.zip charts/vaas/ | |
- name: Github Release | |
uses: softprops/action-gh-release@v2 | |
if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' | |
with: | |
tag_name: ${{steps.extract_tag.outputs.CHART_VERSION}} | |
generate_release_notes: true | |
make_latest: true | |
files: | | |
vaas-helm.zip |