Skip to content

Commit

Permalink
Merge remote-tracking branch 'refs/remotes/origin/fix/grpc-no-keepali…
Browse files Browse the repository at this point in the history
…ve-time' into fix/grpc-no-keepalive-time
  • Loading branch information
Jim Ryan committed Jul 1, 2024
2 parents 17cf80e + 41ec74f commit 5f69ea3
Show file tree
Hide file tree
Showing 98 changed files with 514 additions and 292 deletions.
1 change: 1 addition & 0 deletions .github/config/config-plus-azure
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ export TARGET_NAP_WAF_DOS_IMAGE_PREFIX="marketplaceimages/nginx-plus-ingress-nap
declare -a PLUS_TAG_POSTFIX_LIST=("")
declare -a NAP_WAF_TAG_POSTFIX_LIST=("")
declare -a NAP_DOS_TAG_POSTFIX_LIST=("")
declare -a NAP_WAFV5_TAG_POSTFIX_LIST=()
declare -a NAP_WAF_DOS_TAG_POSTFIX_LIST=("")
declare -a ADDITIONAL_TAGS=()
export PUBLISH_OSS=false
9 changes: 5 additions & 4 deletions .github/config/config-plus-ecr
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@ export TARGET_PLUS_IMAGE_PREFIX=nginx/nginx-plus-ingress
export TARGET_NAP_WAF_IMAGE_PREFIX=nginx/nginx-plus-ingress-nap
export TARGET_NAP_DOS_IMAGE_PREFIX=nginx/nginx-plus-ingress-dos
export TARGET_NAP_WAF_DOS_IMAGE_PREFIX=nginx/nginx-plus-ingress-dos-nap
declare -a PLUS_TAG_POSTFIX_LIST=("-mktpl" "-alpine-mktpl" "-alpine-mktpl-fips")
declare -a NAP_WAF_TAG_POSTFIX_LIST=("-mktpl" "-ubi-mktpl")
declare -a NAP_DOS_TAG_POSTFIX_LIST=("-mktpl" "-ubi-mktpl")
declare -a NAP_WAF_DOS_TAG_POSTFIX_LIST=("-mktpl" "-ubi-mktpl")
declare -a PLUS_TAG_POSTFIX_LIST=("-mktpl")
declare -a NAP_WAF_TAG_POSTFIX_LIST=("-mktpl")
declare -a NAP_DOS_TAG_POSTFIX_LIST=("-mktpl")
declare -a NAP_WAFV5_TAG_POSTFIX_LIST=()
declare -a NAP_WAF_DOS_TAG_POSTFIX_LIST=("-mktpl")
declare -a ADDITIONAL_TAGS=()
export PUBLISH_OSS=false
3 changes: 2 additions & 1 deletion .github/config/config-plus-gcr-public
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,6 @@ export TARGET_NAP_WAF_IMAGE_PREFIX=nginxinc/nginx-plus-ingress-nap
export TARGET_NAP_DOS_IMAGE_PREFIX=nginxinc/nginx-plus-ingress-dos
declare -a PLUS_TAG_POSTFIX_LIST=("")
declare -a NAP_WAF_TAG_POSTFIX_LIST=("")
declare -a NAP_DOS_TAG_POSTFIX_LIST=("")
declare -a NAP_WAFV5_TAG_POSTFIX_LIST=()
declare -a NAP_DOS_TAG_POSTFIX_LIST=()
declare -a ADDITIONAL_TAGS=(${ADDITIONAL_TAG})
22 changes: 18 additions & 4 deletions .github/data/matrix-smoke-oss.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,24 @@
"platforms": "linux/arm, linux/arm64, linux/amd64, linux/ppc64le, linux/s390x"
},
{
"label": "VSR",
"label": "VSR 1/3",
"image": "alpine",
"type": "oss",
"marker": "vsr",
"marker": "'vsr and not vsr_upstream and not vsr_grpc and not vsr_status and not vsr_canary and not vsr_routing and not vsr_api and not vsr_redirects and not vsr_rewrite and not vsr_canned and not vsr_basic'",
"platforms": "linux/arm, linux/arm64, linux/amd64, linux/ppc64le, linux/s390x"
},
{
"label": "VSR 2/3",
"image": "alpine",
"type": "oss",
"marker": "'vsr_basic or vsr_canned or vsr_rewrite or vsr_redirects or vsr_upstream'",
"platforms": "linux/arm, linux/arm64, linux/amd64, linux/ppc64le, linux/s390x"
},
{
"label": "VSR 3/3",
"image": "alpine",
"type": "oss",
"marker": "'vsr_api or vsr_routing or vsr_canary or vsr_status or vsr_grpc'",
"platforms": "linux/arm, linux/arm64, linux/amd64, linux/ppc64le, linux/s390x"
},
{
Expand All @@ -39,14 +53,14 @@
"label": "VS 1/3",
"image": "debian",
"type": "oss",
"marker": "'vs and not vs_ipv6 and not vs_rewrite and not vs_responses and not vs_grpc and not vs_redirects and not vs_externalname and not vs_externaldns and not vs_certmanager'",
"marker": "'vs and not vs_ipv6 and not vs_rewrite and not vs_responses and not vs_grpc and not vs_redirects and not vs_externalname and not vs_externaldns and not vs_certmanager and not vs_api and not vs_backup and not vs_use_cluster_ip and not vs_canary and not vs_upstream and not vs_config_map'",
"platforms": "linux/arm, linux/arm64, linux/amd64, linux/ppc64le, linux/s390x"
},
{
"label": "VS 2/3",
"image": "debian",
"type": "oss",
"marker": "'vs_grpc or vs_redirects or vs_externalname or vs_externaldns'",
"marker": "'vs_grpc or vs_redirects or vs_externalname or vs_externaldns or vs_api or vs_backup or vs_use_cluster_ip or vs_canary or vs_upstream or vs_config_map'",
"platforms": "linux/arm, linux/arm64, linux/amd64, linux/ppc64le, linux/s390x"
},
{
Expand Down
22 changes: 18 additions & 4 deletions .github/data/matrix-smoke-plus.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@
"label": "VS 1/3",
"image": "debian-plus",
"type": "plus",
"marker": "'vs and not vs_ipv6 and not vs_rewrite and not vs_responses and not vs_grpc and not vs_redirects and not vs_externalname and not vs_externaldns and not vs_certmanager'",
"marker": "'vs and not vs_ipv6 and not vs_rewrite and not vs_responses and not vs_grpc and not vs_redirects and not vs_externalname and not vs_externaldns and not vs_certmanager and not vs_api and not vs_backup and not vs_use_cluster_ip and not vs_canary and not vs_upstream and not vs_config_map'",
"platforms": "linux/arm64, linux/amd64"
},
{
"label": "VS 2/3",
"image": "debian-plus",
"type": "plus",
"marker": "'vs_grpc or vs_redirects or vs_externalname or vs_externaldns'",
"marker": "'vs_grpc or vs_redirects or vs_externalname or vs_externaldns or vs_api or vs_backup or vs_use_cluster_ip or vs_canary or vs_upstream or vs_config_map'",
"platforms": "linux/arm64, linux/amd64"
},
{
Expand Down Expand Up @@ -43,10 +43,24 @@
"platforms": "linux/arm64, linux/amd64"
},
{
"label": "VSR",
"label": "VSR 1/3",
"image": "alpine-plus",
"type": "plus",
"marker": "vsr",
"marker": "'vsr and not vsr_upstream and not vsr_grpc and not vsr_status and not vsr_canary and not vsr_routing and not vsr_api and not vsr_redirects and not vsr_rewrite and not vsr_canned and not vsr_basic'",
"platforms": "linux/arm64, linux/amd64"
},
{
"label": "VSR 2/3",
"image": "alpine-plus",
"type": "plus",
"marker": "'vsr_basic or vsr_canned or vsr_rewrite or vsr_redirects or vsr_upstream'",
"platforms": "linux/arm64, linux/amd64"
},
{
"label": "VSR 3/3",
"image": "alpine-plus",
"type": "plus",
"marker": "'vsr_api or vsr_routing or vsr_canary or vsr_status or vsr_grpc'",
"platforms": "linux/arm64, linux/amd64"
},
{
Expand Down
2 changes: 1 addition & 1 deletion .github/scripts/create-release-tarballs.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash

set -e
set -ex

directory=$1
version=$2
Expand Down
45 changes: 45 additions & 0 deletions .github/scripts/exclude_ci_files.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
.github/actionlint.yaml
.github/dependabot.yml
.github/labeler.yml
.github/PULL_REQUEST_TEMPLATE.md
.github/release.yml
.github/actions/certify-openshift-image/action.yml
.github/config/config-oss-*
.github/config/config-plus-*
.github/data/matrix-regression.json
.github/ISSUE_TEMPLATE/*
.github/scripts/create-release-tarballs.sh
.github/scripts/docker-updater.sh
.github/scripts/release-notes-update.sh
.github/scripts/release-version-update.sh
.github/workflows/build-base-images.yml
.github/workflows/build-test-image.yml
.github/workflows/cache-update.yml
.github/workflows/cherry-pick.yml
.github/workflows/codeql-analysis.yml
.github/workflows/create-release-branch.yml
.github/workflows/dependabot-auto-merge.yml
.github/workflows/dependabot-hugo.yml
.github/workflows/dependency-review.yml
.github/workflows/dockerhub-description.yml
.github/workflows/fossa.yml
.github/workflows/image-promotion.yml
.github/workflows/issues.yaml
.github/workflows/labeler.yml
.github/workflows/lint-format.yml
.github/workflows/mend.yml
.github/workflows/notifications.yml
.github/workflows/oss-release.yml
.github/workflows/patch-image.yml
.github/workflows/plus-release.yml
.github/workflows/publish-helm.yml
.github/workflows/regression.yml
.github/workflows/release-pr.yml
.github/workflows/release.yml
.github/workflows/retag-images.yml
.github/workflows/scorecards.yml
.github/workflows/stale.yml
.github/workflows/update-docker-images.yml
.github/workflows/update-docker-sha.yml
.github/workflows/updates-notification.yml
.github/workflows/version-bump.yml
10 changes: 9 additions & 1 deletion .github/scripts/variables.sh
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,15 @@ get_chart_md5() {
}

get_actions_md5() {
find .github -type f -exec md5sum {} + | LC_ALL=C sort | md5sum | awk '{ print $1 }'
exclude_list="$(dirname $0)/exclude_ci_files.txt"
find_command="find .github -type f -not -path '${exclude_list}'"
while IFS= read -r file
do
find_command+=" -not -path '$file'"
done < "$exclude_list"

find_command+=" -exec md5sum {} +"
eval "$find_command" | LC_ALL=C sort | md5sum | awk '{ print $1 }'
}

get_build_tag() {
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/build-base-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ jobs:
type=raw,value=${{ needs.checks.outputs.docker_md5 }},enable=${{ needs.checks.outputs.docker_md5 != '' }}
- name: Build Base Container
uses: docker/build-push-action@31159d49c0d4756269a0940a750801a1ea5d7003 # v6.1.0
uses: docker/build-push-action@15560696de535e4014efeff63c48f16952e52dd1 # v6.2.0
with:
file: build/Dockerfile
context: "."
Expand Down Expand Up @@ -157,7 +157,7 @@ jobs:
type=raw,value=${{ needs.checks.outputs.docker_md5 }},enable=${{ needs.checks.outputs.docker_md5 != '' }}
- name: Build Base Container
uses: docker/build-push-action@31159d49c0d4756269a0940a750801a1ea5d7003 # v6.1.0
uses: docker/build-push-action@15560696de535e4014efeff63c48f16952e52dd1 # v6.2.0
with:
file: build/Dockerfile
context: "."
Expand Down Expand Up @@ -227,7 +227,7 @@ jobs:
type=raw,value=${{ needs.checks.outputs.docker_md5 }},enable=${{ needs.checks.outputs.docker_md5 != '' }}
- name: Build Base Container
uses: docker/build-push-action@31159d49c0d4756269a0940a750801a1ea5d7003 # v6.1.0
uses: docker/build-push-action@15560696de535e4014efeff63c48f16952e52dd1 # v6.2.0
with:
file: build/Dockerfile
context: "."
Expand Down
20 changes: 12 additions & 8 deletions .github/workflows/build-oss.yml
Original file line number Diff line number Diff line change
Expand Up @@ -95,12 +95,16 @@ jobs:
env:
DOCKER_METADATA_ANNOTATIONS_LEVELS: manifest,index

- name: Check if images exist
id: images_exist
- name: Set base name variable
id: base_name
run: |
base_image="gcr.io/f5-gcs-7899-ptg-ingrss-ctlr/dev/nginx-ic-base/oss:${{ inputs.base-image-md5 }}-${{ inputs.image }}"
echo "image=${base_image}" >> $GITHUB_OUTPUT
if docker manifest inspect ${base_image}; then
- name: Check if images exist
id: images_exist
run: |
if docker manifest inspect ${{ steps.base_name.outputs.image }}; then
echo "base_exists=true" >> $GITHUB_OUTPUT
fi
if docker manifest inspect ${{ steps.meta.outputs.tags }}; then
Expand All @@ -119,13 +123,13 @@ jobs:
if: ${{ steps.images_exist.outputs.base_exists != 'true' || steps.images_exist.outputs.target_exists != 'true' }}

- name: Build Base Container
uses: docker/build-push-action@31159d49c0d4756269a0940a750801a1ea5d7003 # v6.1.0
uses: docker/build-push-action@15560696de535e4014efeff63c48f16952e52dd1 # v6.2.0
with:
file: build/Dockerfile
context: "."
cache-to: type=gha,scope=${{ inputs.image }},mode=max
target: common
tags: ${{ steps.images_exist.outputs.image }}
tags: ${{ steps.base_name.outputs.image }}
platforms: ${{ inputs.platforms }}
pull: true
push: true
Expand All @@ -138,7 +142,7 @@ jobs:
- name: Debug values
run: |
echo "authenticated: ${{ inputs.authenticated }}"
echo "images_exist: ${{ steps.images_exist.outputs.base_exists }}"
echo "base_exists: ${{ steps.images_exist.outputs.base_exists }}"
echo "target_exists: ${{ steps.images_exist.outputs.target_exists }}"
echo "full-build: ${{ inputs.full-build }}"
Expand All @@ -151,7 +155,7 @@ jobs:
if: ${{ steps.images_exist.outputs.base_exists != 'true' || steps.images_exist.outputs.target_exists != 'true' }}

- name: Build Docker image
uses: docker/build-push-action@31159d49c0d4756269a0940a750801a1ea5d7003 # v6.1.0
uses: docker/build-push-action@15560696de535e4014efeff63c48f16952e52dd1 # v6.2.0
id: build-push
with:
file: build/Dockerfile
Expand All @@ -170,7 +174,7 @@ jobs:
provenance: false
build-args: |
BUILD_OS=${{ inputs.image }}
${{ inputs.authenticated && format('PREBUILT_BASE_IMG={0}', steps.images_exist.outputs.image) }}
${{ inputs.authenticated && format('PREBUILT_BASE_IMG={0}', steps.base_name.outputs.image) }}
IC_VERSION=${{ inputs.ic-version && inputs.ic-version || steps.meta.outputs.version }}
if: ${{ steps.images_exist.outputs.base_exists != 'true' || steps.images_exist.outputs.target_exists != 'true' }}

Expand Down
18 changes: 11 additions & 7 deletions .github/workflows/build-plus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -100,12 +100,16 @@ jobs:
env:
DOCKER_METADATA_ANNOTATIONS_LEVELS: manifest,index

- name: Check if images exist
id: images_exist
- name: Set base name variable
id: base_name
run: |
base_image="gcr.io/f5-gcs-7899-ptg-ingrss-ctlr/dev/nginx-ic-base/plus:${{ inputs.base-image-md5 }}-${{ inputs.image }}${{ steps.nap_modules.outputs.name != '' && format('-{0}', steps.nap_modules.outputs.name) || '' }}${{ contains(inputs.image, 'v5') && '-v5' || '' }}"
echo "image=${base_image}" >> $GITHUB_OUTPUT
if docker manifest inspect ${base_image}; then
- name: Check if images exist
id: images_exist
run: |
if docker pull ${{ steps.base_name.outputs.image }}; then
echo "base_exists=true" >> $GITHUB_OUTPUT
fi
if docker manifest inspect ${{ steps.meta.outputs.tags }}; then
Expand All @@ -124,13 +128,13 @@ jobs:
if: ${{ steps.images_exist.outputs.base_exists != 'true' || steps.images_exist.outputs.target_exists != 'true' }}

- name: Build Base Container
uses: docker/build-push-action@31159d49c0d4756269a0940a750801a1ea5d7003 # v6.1.0
uses: docker/build-push-action@15560696de535e4014efeff63c48f16952e52dd1 # v6.2.0
with:
file: build/Dockerfile
context: "."
cache-to: type=gha,scope=${{ inputs.image }}${{ steps.nap_modules.outputs.name != '' && format('-{0}', steps.nap_modules.outputs.name) || '' }},mode=max
target: common
tags: ${{ steps.images_exist.outputs.image }}
tags: ${{ steps.base_name.outputs.image }}
platforms: ${{ inputs.platforms }}
pull: true
push: true
Expand Down Expand Up @@ -161,7 +165,7 @@ jobs:
if: ${{ steps.images_exist.outputs.base_exists != 'true' || steps.images_exist.outputs.target_exists != 'true' }}

- name: Build Docker image
uses: docker/build-push-action@31159d49c0d4756269a0940a750801a1ea5d7003 # v6.1.0
uses: docker/build-push-action@15560696de535e4014efeff63c48f16952e52dd1 # v6.2.0
id: build-push
with:
file: build/Dockerfile
Expand All @@ -180,7 +184,7 @@ jobs:
provenance: false
build-args: |
BUILD_OS=${{ inputs.image }}
${{ inputs.authenticated && format('PREBUILT_BASE_IMG={0}', steps.images_exist.outputs.image ) }}
${{ inputs.authenticated && format('PREBUILT_BASE_IMG={0}', steps.base_name.outputs.image ) }}
IC_VERSION=${{ inputs.ic-version && inputs.ic-version || steps.meta.outputs.version }}
${{ inputs.nap-modules != '' && format('NAP_MODULES={0}', steps.nap_modules.outputs.name) || '' }}
${{ (contains(inputs.target, 'aws') && inputs.nap-modules != '') && format('NAP_MODULES_AWS={0}', steps.nap_modules.outputs.modules) || '' }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-test-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ jobs:
password: ${{ steps.auth.outputs.access_token }}

- name: Build Test-Runner Container
uses: docker/build-push-action@31159d49c0d4756269a0940a750801a1ea5d7003 # v6.1.0
uses: docker/build-push-action@15560696de535e4014efeff63c48f16952e52dd1 # v6.2.0
with:
file: tests/Dockerfile
context: "."
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
name: CI
run-name: CI on "${{ github.head_ref && github.head_ref || github.ref }}" by @${{ github.actor }}

on:
pull_request:
Expand Down Expand Up @@ -438,7 +439,7 @@ jobs:
if: ${{ needs.checks.outputs.forked_workflow == 'true' && needs.checks.outputs.docs_only == 'false' }}

- name: Build Docker Image ${{ matrix.base-os }}
uses: docker/build-push-action@31159d49c0d4756269a0940a750801a1ea5d7003 # v6.1.0
uses: docker/build-push-action@15560696de535e4014efeff63c48f16952e52dd1 # v6.2.0
with:
file: build/Dockerfile
context: "."
Expand Down Expand Up @@ -556,7 +557,7 @@ jobs:
if: ${{ needs.checks.outputs.forked_workflow == 'false' && needs.checks.outputs.docs_only == 'false' }}

- name: Build Test-Runner Container
uses: docker/build-push-action@31159d49c0d4756269a0940a750801a1ea5d7003 # v6.1.0
uses: docker/build-push-action@15560696de535e4014efeff63c48f16952e52dd1 # v6.2.0
with:
file: tests/Dockerfile
context: "."
Expand Down Expand Up @@ -663,7 +664,7 @@ jobs:
if: ${{ inputs.force || (needs.checks.outputs.forked_workflow == 'false' && needs.checks.outputs.stable_image_exists != 'true' && needs.checks.outputs.docs_only == 'false') }}

tag-results:
if: ${{ always() }}
if: ${{ !cancelled() }}
runs-on: ubuntu-22.04
name: Final CI Results
needs: [tag-stable, smoke-tests-oss, smoke-tests-plus, smoke-tests-nap]
Expand Down
Loading

0 comments on commit 5f69ea3

Please sign in to comment.