Skip to content

chore(deps): update dependency cloudfoundry/cf-networking-release to v3.109.0 #194

chore(deps): update dependency cloudfoundry/cf-networking-release to v3.109.0

chore(deps): update dependency cloudfoundry/cf-networking-release to v3.109.0 #194

Workflow file for this run

name: CF Acceptance Tests on KinD
on:
schedule:
- cron: '0 6 * * *'
workflow_dispatch:
pull_request:
branches:
- main
jobs:
kind-cats:
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v6
- name: Check if CATS should be run
id: check_changes
run: |
if [ "${{ github.event_name }}" == "pull_request" ] && [ "${{ github.head_ref }}" != "auto/sync-cf-deployment-versions" ]; then
echo "skip=true" >> $GITHUB_OUTPUT
else
echo "skip=false" >> $GITHUB_OUTPUT
fi
- name: Set kernel settings
if: steps.check_changes.outputs.skip != 'true'
run: |
docker run --rm \
--privileged \
--pid host \
-v /lib/modules:/lib/modules:ro \
alpine sh -c "sysctl -w fs.inotify.max_user_instances=512 && modprobe nfs && modprobe nfsd"
- name: Install dependencies
if: steps.check_changes.outputs.skip != 'true'
run: |
mkdir -p $HOME/.local/bin && echo "$HOME/.local/bin" >> "$GITHUB_PATH"
curl -L https://kind.sigs.k8s.io/dl/v${KIND_VERSION}/kind-linux-amd64 -o $HOME/.local/bin/kind
chmod +x $HOME/.local/bin/kind
curl -L https://github.com/helmfile/helmfile/releases/download/v${HELMFILE_VERSION}/helmfile_${HELMFILE_VERSION}_linux_amd64.tar.gz | tar -zx
mv helmfile $HOME/.local/bin/helmfile
curl -L "https://packages.cloudfoundry.org/stable?release=linux64-binary&version=${CF_CLI_VERSION}&source=github" | tar -zx
mv cf8 $HOME/.local/bin/cf
env:
# renovate: dataSource=github-releases depName=cloudfoundry/cli
CF_CLI_VERSION: "8.18.0"
# renovate: dataSource=github-releases depName=kubernetes-sigs/kind
KIND_VERSION: "0.31.0"
# renovate: dataSource=github-releases depName=helmfile/helmfile
HELMFILE_VERSION: "1.4.3"
- name: Run make up
if: steps.check_changes.outputs.skip != 'true'
run: |
echo '- role: worker
labels:
cloudfoundry.org/cell: "true"
cloudfoundry.org/zone: z2' >> kind.yaml
make create-kind
kubectl annotate node -l cloudfoundry.org/zone=z2 "cloudfoundry.org/placement-tags=isolated"
make up
- name: Login
if: steps.check_changes.outputs.skip != 'true'
run: make login
- name: Init
if: steps.check_changes.outputs.skip != 'true'
run: make bootstrap-complete
- name: Minimal Test
if: steps.check_changes.outputs.skip != 'true'
run: |
cf push -p examples/hello-js -i 2 -m 1024M hello-js
cf apps
curl --fail hello-js.apps.127-0-0-1.nip.io
cf delete -f hello-js
- name: Register broker and enable access to service
if: steps.check_changes.outputs.skip != 'true'
run: |
cf create-service-broker nfsbroker nfsbroker nfsbroker http://nfsbroker:8080
cf enable-service-access nfs
cf marketplace
- name: Create nfs share
if: steps.check_changes.outputs.skip != 'true'
run: |
docker exec nfs-server sh -c "mkdir -p /exports/test-share && chown 1000:1000 /exports/test-share && chmod 777 /exports/test-share"
- name: Start extra services
if: steps.check_changes.outputs.skip != 'true'
run: |
docker compose -p cats -f "scripts/docker-compose-cats.yaml" --progress plain up -d
- name: setup CF tests
if: steps.check_changes.outputs.skip != 'true'
uses: ./.github/actions/setup-cf-tests
with:
test-repo: cf-acceptance-tests
config-template: ./.github/cats-config.tpl
config-output: ./.github/cats-config.json
env:
CATS_PRIVATE_DOCKER_USERNAME: ${{ secrets.CATS_PRIVATE_DOCKER_USERNAME }}
CATS_PRIVATE_DOCKER_PASSWORD: ${{ secrets.CATS_PRIVATE_DOCKER_PASSWORD }}
CATS_PRIVATE_DOCKER_IMAGE: ${{ secrets.CATS_PRIVATE_DOCKER_IMAGE }}
- name: run CATS
if: steps.check_changes.outputs.skip != 'true'
env:
CONFIG: "${{ github.workspace }}/.github/cats-config.json"
GINKGO_NO_COLOR: "true"
run: |
./cf-acceptance-tests/bin/test --no-color --github-output --timeout=180m --procs=4 --flake-attempts=2 --json-report report.json
- name: debug info
if: failure()
run: kubectl get events -A --sort-by='.lastTimestamp'
- uses: actions/upload-artifact@v7
if: always()
with:
name: report
path: ./cf-acceptance-tests/report.json