Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 10 additions & 49 deletions .github/workflows/functions.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -77,14 +77,6 @@ jobs:
- name: Run Unit Tests
run: make test

- uses: codecov/codecov-action@v5
with:
files: ./coverage.txt
flags: unit ${{ matrix.os }}
fail_ci_if_error: true
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}

# --------------
# TEMPLATE TESTS
# --------------
Expand Down Expand Up @@ -161,6 +153,8 @@ jobs:

- name: Install Binaries
run: ./hack/binaries.sh
- name: Configure IPv6
run: ./hack/configure-nat64.sh
- name: Allocate Cluster
run: ./hack/cluster.sh
- name: Start Local Registry
Expand All @@ -175,14 +169,6 @@ jobs:
- name: Run Integration Tests
run: make test-integration

- uses: codecov/codecov-action@v5
with:
files: ./coverage.txt
flags: integration
fail_ci_if_error: true
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}

# Preserve Cluster Logs
- name: Dump Cluster Logs
if: always()
Expand Down Expand Up @@ -221,6 +207,8 @@ jobs:

- name: Install Binaries
run: ./hack/binaries.sh
- name: Configure IPv6
run: ./hack/configure-nat64.sh
- name: Allocate Cluster
run: ./hack/cluster.sh
- name: Start Local Registry
Expand All @@ -231,14 +219,6 @@ jobs:
- name: Run Basic E2E Tests (core, metadata, remote)
run: make test-e2e

- uses: codecov/codecov-action@v5
with:
files: ./coverage.txt
flags: e2e
fail_ci_if_error: true
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}

# Preserve Cluster Logs
- name: Dump Cluster Logs
if: always()
Expand Down Expand Up @@ -286,6 +266,8 @@ jobs:

- name: Install Binaries
run: ./hack/binaries.sh
- name: Configure IPv6
run: ./hack/configure-nat64.sh
- name: Allocate Cluster
run: ./hack/cluster.sh
- name: Start Local Registry
Expand All @@ -294,14 +276,6 @@ jobs:
- name: Run E2E Podman Tests
run: make test-e2e-podman

- uses: codecov/codecov-action@v5
with:
files: ./coverage.txt
flags: e2e
fail_ci_if_error: true
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}

# Preserve Cluster Logs
- name: Dump Cluster Logs
if: always()
Expand Down Expand Up @@ -373,6 +347,8 @@ jobs:
# Allocate Cluster
- name: Install Binaries
run: ./hack/binaries.sh
- name: Configure IPv6
run: ./hack/configure-nat64.sh
- name: Allocate Cluster
run: ./hack/cluster.sh
- name: Start Local Registry
Expand All @@ -383,15 +359,6 @@ jobs:
- name: Run Test - ${{ matrix.runtime }}
run: make test-e2e-matrix

# Coverage and Logs
- uses: codecov/codecov-action@v5
with:
files: ./coverage.txt
flags: e2e ${{ matrix.runtime }}
fail_ci_if_error: true
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}

# Preserve Cluster Logs
- name: Dump Cluster Logs
if: always()
Expand Down Expand Up @@ -429,6 +396,8 @@ jobs:

- name: Install Binaries
run: ./hack/binaries.sh
- name: Configure IPv6
run: ./hack/configure-nat64.sh
- name: Allocate Cluster
run: ./hack/cluster.sh
- name: Start Local Registry
Expand All @@ -439,14 +408,6 @@ jobs:
- name: Run Config CI E2E Tests
run: make test-e2e-config-ci

- uses: codecov/codecov-action@v5
with:
files: ./coverage.txt
flags: e2e-config-ci
fail_ci_if_error: true
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}

# Preserve Cluster Logs
- name: Dump Cluster Logs
if: always()
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/test-podman-next.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ jobs:
- uses: knative/actions/setup-go@main
- name: Install Binaries
run: ./hack/binaries.sh
- name: Configure IPv6
run: ./hack/configure-nat64.sh
- name: Allocate Cluster
run: ./hack/cluster.sh
- name: Local Registry
Expand Down
2 changes: 1 addition & 1 deletion hack/binaries.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ install_binaries() {

local kubectl_version=1.33.1
local kind_version=0.31.0
local dapr_version=1.16.0
local dapr_version=1.17.1
local helm_version=3.18.0
local stern_version=1.32.0
local kn_version=1.18.0
Expand Down
32 changes: 31 additions & 1 deletion hack/cluster.sh
Original file line number Diff line number Diff line change
Expand Up @@ -108,16 +108,29 @@ kubernetes() {
cat <<EOF | $KIND create cluster --name=func --kubeconfig="${KUBECONFIG}" --wait=60s --config=-
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
networking:
apiServerAddress: "::1"
apiServerPort: 6443
ipFamily: ipv6
nodes:
- role: control-plane
image: kindest/node:${kind_node_version}
extraPortMappings:
- containerPort: 80
hostPort: 80
listenAddress: "::1"
- containerPort: 80
hostPort: 80
listenAddress: "127.0.0.1"
- containerPort: 443
hostPort: 443
listenAddress: "::1"
- containerPort: 443
hostPort: 443
listenAddress: "127.0.0.1"
- containerPort: 30022
hostPort: 30022
listenAddress: "::1"
- containerPort: 30022
hostPort: 30022
listenAddress: "127.0.0.1"
Expand All @@ -131,6 +144,15 @@ containerdConfigPatches:
endpoint = ["http://func-registry:5000"]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."quay.io"]
endpoint = ["http://func-registry:5000"]
kubeadmConfigPatches:
- |
kind: ClusterConfiguration
apiServer:
certSANs:
- "localhost"
- "localtest.me"
- "::"
- "::1"
EOF
sleep 10
$KUBECTL wait pod --for=condition=Ready -l '!job-name' -n kube-system --timeout=5m
Expand All @@ -148,6 +170,12 @@ serving() {

curl -L -s https://github.com/knative/serving/releases/download/knative-$knative_serving_version/serving-core.yaml | $KUBECTL apply -f -

# Patch autoscaler image: upstream Knative bug hardcodes EndpointSlice
# AddressType to IPv4, crashing the autoscaler on IPv6-only clusters.
# This patched image detects the IP family from POD_IP.
$KUBECTL set image deployment/autoscaler -n knative-serving \
autoscaler="quay.io/mvasek/knative/autoscaler@sha256:6a2f328833e9ed516dd281aba891923082ddaa69e5907f0f0cef6d2402732e4c"

sleep 2
$KUBECTL wait pod --for=condition=Ready -l '!job-name' -n knative-serving --timeout=5m

Expand Down Expand Up @@ -239,8 +267,9 @@ networking() {

echo "Installing a configured Contour."
curl -sSL "https://github.com/knative/net-contour/releases/download/knative-${contour_version}/contour.yaml" \
| $YQ '(select(.kind == "Deployment" and .metadata.name == "contour").spec.template.spec.containers[0].args[] | select(. == "--xds-address=0.0.0.0")) = "--xds-address=::"' \
| $YQ '(select(.kind == "Deployment" and .metadata.name == "contour").spec.template.spec.containers[0].args)
+= ["--envoy-service-http-address=::", "--envoy-service-https-address=::"]' \
+= ["--envoy-service-http-address=::", "--envoy-service-https-address=::", "--stats-address=::"]' \
| $KUBECTL apply -f -

sleep 5
Expand Down Expand Up @@ -412,6 +441,7 @@ dapr_runtime() {
if [ "${GITHUB_ACTIONS:-false}" = "true" ]; then
dapr_flags="--image-registry=ghcr.io/dapr --log-as-json"
fi
dapr_flags="--image-registry=quay.io/mvasek/dapr --log-as-json"

# Install Dapr Runtime
# shellcheck disable=SC2086
Expand Down
Loading
Loading