From 6a0890842540fa97bee4286c2329ab0e9778f16f Mon Sep 17 00:00:00 2001 From: Alec Painter Date: Wed, 26 Jan 2022 11:05:42 +0000 Subject: [PATCH 1/5] Added new 9.2.0.5 MQ version --- .travis.yml | 6 +++--- CHANGELOG.md | 4 ++++ Dockerfile-server | 2 +- Makefile | 15 ++++++++------- config.env | 2 ++ docs/building.md | 2 +- docs/security.md | 4 ++-- docs/testing.md | 2 +- docs/usage.md | 2 +- 9 files changed, 23 insertions(+), 16 deletions(-) diff --git a/.travis.yml b/.travis.yml index e519516b..401a9d06 100644 --- a/.travis.yml +++ b/.travis.yml @@ -26,7 +26,7 @@ services: env: global: - MAIN_BRANCH=v9.2.0.x-eus - - MQ_LTS_VERSION=9.2.0.4 + - MQ_LTS_VERSION=9.2.0.5 - TAGCACHE_FILE=tagcache - RELEASE=r2 - RELEASE_LTS=r1 @@ -109,7 +109,7 @@ jobs: - LTS=true - TAGCACHE_FILE=tagcache-lts - MQ_VERSION=$MQ_LTS_VERSION - - MQ_ARCHIVE_REPOSITORY=$MQ_9204_EUS_ARCHIVE_REPOSITORY_AMD64 + - MQ_ARCHIVE_REPOSITORY=$MQ_9205_EUS_ARCHIVE_REPOSITORY_AMD64 - RELEASE=$RELEASE_LTS script: bash -e travis-build-scripts/run.sh - stage: build @@ -121,7 +121,7 @@ jobs: - TAGCACHE_FILE=tagcache-lts - MQ_VERSION=$MQ_LTS_VERSION - TEST_OPTS_DOCKER="-run TestGoldenPathWithMetrics" - - MQ_ARCHIVE_REPOSITORY=$MQ_9204_EUS_ARCHIVE_REPOSITORY_S390X + - MQ_ARCHIVE_REPOSITORY=$MQ_9205_EUS_ARCHIVE_REPOSITORY_S390X - RELEASE=$RELEASE_LTS script: bash -e travis-build-scripts/run.sh - stage: push-manifest diff --git a/CHANGELOG.md b/CHANGELOG.md index f1349ccb..f68e0e8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Change log +## 9.2.0.5-LTS (2022-01-25) + +* Updated to MQ version 9.2.0.5 + ## 9.2.0.4-LTS (2021-10-05) * Updated to MQ version 9.2.0.4 diff --git a/Dockerfile-server b/Dockerfile-server index a09c801d..1ad7f9ce 100644 --- a/Dockerfile-server +++ b/Dockerfile-server @@ -17,7 +17,7 @@ ARG BASE_TAG=8.5-204 ARG BUILDER_IMAGE=registry.redhat.io/ubi8/go-toolset ARG BUILDER_TAG=1.16.7-5 ARG GO_WORKDIR=/opt/app-root/src/go/src/github.com/ibm-messaging/mq-container -ARG MQ_URL="https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/messaging/mqadv/9.2.0.4-IBM-MQ-Advanced-for-Developers-Non-Install-LinuxX64.tar.gz" +ARG MQ_URL="https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/messaging/mqadv/9.2.0.5-IBM-MQ-Advanced-for-Developers-Non-Install-LinuxX64.tar.gz" ############################################################################### # Build stage to build Go code ############################################################################### diff --git a/Makefile b/Makefile index 2f280cf4..46d12a3d 100644 --- a/Makefile +++ b/Makefile @@ -531,13 +531,14 @@ include formatting.mk .PHONY: update-release-information update-release-information: - sed -i.bak 's/ARG MQ_URL=.*-LinuxX64.tar.gz"/ARG MQ_URL="https:\/\/public.dhe.ibm.com\/ibmdl\/export\/pub\/software\/websphere\/messaging\/mqadv\/$(MQ_VERSION)-IBM-MQ-Advanced-for-Developers-Non-Install-LinuxX64.tar.gz"/g' Dockerfile-server && rm Dockerfile-server.bak + sed -i.bak 's/ARG MQ_URL=.*-LinuxX64.tar.gz"/ARG MQ_URL="https:\/\/public.dhe.ibm.com\/ibmdl\/export\/pub\/software\/websphere\/messaging\/mqadv\/$(MQ_LTS_VERSION)-IBM-MQ-Advanced-for-Developers-Non-Install-LinuxX64.tar.gz"/g' Dockerfile-server && rm Dockerfile-server.bak $(eval MQ_VERSION_1=$(shell echo '${MQ_VERSION}' | rev | cut -c 3- | rev)) - sed -i.bak 's/IBM_MQ_.*_LINUX_X86-64_NOINST.tar.gz/IBM_MQ_${MQ_VERSION_1}_LINUX_X86-64_NOINST.tar.gz/g' docs/building.md && rm docs/building.md.bak - sed -i.bak 's/ibm-mqadvanced-server:.*-amd64/ibm-mqadvanced-server:$(MQ_VERSION)-amd64/g' docs/security.md - sed -i.bak 's/ibm-mqadvanced-server-dev.*-amd64/ibm-mqadvanced-server-dev:$(MQ_VERSION)-amd64/g' docs/security.md && rm docs/security.md.bak - sed -i.bak 's/MQ_IMAGE_ADVANCEDSERVER=ibm-mqadvanced-server:.*-amd64/MQ_IMAGE_ADVANCEDSERVER=ibm-mqadvanced-server:$(MQ_VERSION)-amd64/g' docs/testing.md && rm docs/testing.md.bak - $(eval MQ_VERSION_2=$(shell echo '${MQ_VERSION_1}' | rev | cut -c 3- | rev)) - sed -i.bak 's/knowledgecenter\/SSFKSJ_.*\/com/knowledgecenter\/SSFKSJ_${MQ_VERSION_2}.0\/com/g' docs/usage.md && rm docs/usage.md.bak + sed -i.bak 's/IBM_MQ_.*_LINUX_X86-64_NOINST.tar.gz/IBM_MQ_${MQ_LTS_VERSION}_LINUX_X86-64_NOINST.tar.gz/g' docs/building.md && rm docs/building.md.bak + sed -i.bak 's/ibm-mqadvanced-server:.*-amd64/ibm-mqadvanced-server:$(MQ_LTS_VERSION)-amd64/g' docs/security.md + sed -i.bak 's/ibm-mqadvanced-server-dev.*-amd64/ibm-mqadvanced-server-dev:$(MQ_LTS_VERSION)-amd64/g' docs/security.md && rm docs/security.md.bak + sed -i.bak 's/MQ_IMAGE_ADVANCEDSERVER=ibm-mqadvanced-server:.*-amd64/MQ_IMAGE_ADVANCEDSERVER=ibm-mqadvanced-server:$(MQ_LTS_VERSION)-amd64/g' docs/testing.md && rm docs/testing.md.bak $(eval MQ_VERSION_3=$(shell echo '${MQ_VERSION_1}' | sed "s/\.//g")) sed -i.bak 's/MQ_..._ARCHIVE_REPOSITORY/MQ_${MQ_VERSION_3}_ARCHIVE_REPOSITORY/g' .travis.yml && rm .travis.yml.bak + sed -i.bak 's/MQ_LTS_VERSION=[0-9]\.[0-9]\.[0-9]\.[0-9]/MQ_LTS_VERSION=9.2.0.5/g' .travis.yml && rm .travis.yml.bak + $(eval MQ_LTS_VERSION_1=$(shell echo '${MQ_LTS_VERSION}' | sed "s/\.//g")) + sed -i.bak 's/MQ_...._EUS_ARCHIVE_REPOSITORY/MQ_${MQ_LTS_VERSION_1}_EUS_ARCHIVE_REPOSITORY/g' .travis.yml && rm .travis.yml.bak diff --git a/config.env b/config.env index 7dcfb5d5..be050dec 100644 --- a/config.env +++ b/config.env @@ -3,4 +3,6 @@ # MQ_VERSION is the fully qualified MQ version number to build MQ_VERSION ?= 9.2.0.0 +MQ_LTS_VERSION ?= 9.2.0.5 + ########################################################################################################################################################### diff --git a/docs/building.md b/docs/building.md index 12a96d5d..674e2d12 100644 --- a/docs/building.md +++ b/docs/building.md @@ -20,7 +20,7 @@ From MQ 9.2.X, the MQ container adds support for MQ Long Term Support (LTS) **pr This procedure works for building the MQ Continuous Delivery release, on `amd64`, `ppc64le` and `s390x` architectures. 1. Create a `downloads` directory in the root of this repository -2. Download MQ from [IBM Passport Advantage](https://www.ibm.com/software/passportadvantage/) or [IBM Fix Central](https://www.ibm.com/support/fixcentral), and place the downloaded file (for example, `IBM_MQ_9.2.0_LINUX_X86-64_NOINST.tar.gz`) in the `downloads` directory +2. Download MQ from [IBM Passport Advantage](https://www.ibm.com/software/passportadvantage/) or [IBM Fix Central](https://www.ibm.com/support/fixcentral), and place the downloaded file (for example, `IBM_MQ_9.2.0.5_LINUX_X86-64_NOINST.tar.gz`) in the `downloads` directory 3. Login to the Red Hat Registry: `docker login registry.redhat.io` using your Customer Portal credentials. 4. Run `make build-advancedserver` diff --git a/docs/security.md b/docs/security.md index 93ed2d7f..afc68442 100644 --- a/docs/security.md +++ b/docs/security.md @@ -16,7 +16,7 @@ docker run \ --env LICENSE=accept \ --env MQ_QMGR_NAME=QM1 \ --detach \ - ibm-mqadvanced-server:9.2.0.4-amd64 + ibm-mqadvanced-server:9.2.0.5-amd64 ``` The MQ Advanced for Developers image does require the "chown", "setuid", "setgid" and "audit_write" capabilities (plus "dac_override" if you're using an image based on Red Hat Enterprise Linux). This is because it uses the "sudo" command to change passwords inside the container. For example, in Docker, you could do the following: @@ -31,5 +31,5 @@ docker run \ --env LICENSE=accept \ --env MQ_QMGR_NAME=QM1 \ --detach \ - ibm-mqadvanced-server-dev:9.2.0.4-amd64 + ibm-mqadvanced-server-dev:9.2.0.5-amd64 ``` diff --git a/docs/testing.md b/docs/testing.md index f352b59c..2d897a96 100644 --- a/docs/testing.md +++ b/docs/testing.md @@ -25,7 +25,7 @@ make advancedserver You can specify the image to use directly by using the `MQ_IMAGE_ADVANCEDSERVER` or `MQ_IMAGE_DEVSERVER` variables, for example: ``` -MQ_IMAGE_ADVANCEDSERVER=ibm-mqadvanced-server:9.2.0.4-amd64 make test-advancedserver +MQ_IMAGE_ADVANCEDSERVER=ibm-mqadvanced-server:9.2.0.5-amd64 make test-advancedserver ``` You can pass parameters to `go test` with an environment variable. For example, to run the "TestGoldenPath" test, run the following command: diff --git a/docs/usage.md b/docs/usage.md index b254cf76..fd39e625 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -60,7 +60,7 @@ You can customize the configuration in several ways: 1. For getting started, you can use the [default developer configuration](developer-config.md), which is available out-of-the-box for the MQ Advanced for Developers image 2. By creating your own image and adding your own MQSC file into the `/etc/mqm` directory on the image. This file will be run when your queue manager is created. -3. By using [remote MQ administration](https://www.ibm.com/support/knowledgecenter/SSFKSJ_9.2.0/com.ibm.mq.adm.doc/q021090_.htm), via an MQ command server, the MQ HTTP APIs, or using a tool such as the MQ web console or MQ Explorer. +3. By using [remote MQ administration](https://www.ibm.com/docs/en/ibm-mq/9.2?topic=administering-working-remote-mq-objects), via an MQ command server, the MQ HTTP APIs, or using a tool such as the MQ web console or MQ Explorer. Note that a listener is always created on port 1414 inside the container. This port can be mapped to any port on the Docker host. From 1be3c273fca2e224fdf495710eec2ec46293ecea Mon Sep 17 00:00:00 2001 From: David Bell Date: Wed, 26 Jan 2022 19:42:30 +0000 Subject: [PATCH 2/5] Update ubi and go-toolset --- .travis.yml | 2 +- Dockerfile-server | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 401a9d06..d3faf3bb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,7 +18,7 @@ sudo: required language: go go: - - "1.13.15" + - "1.16.12" services: - docker diff --git a/Dockerfile-server b/Dockerfile-server index 1ad7f9ce..17443950 100644 --- a/Dockerfile-server +++ b/Dockerfile-server @@ -13,9 +13,9 @@ # limitations under the License. ARG BASE_IMAGE=registry.redhat.io/ubi8/ubi-minimal -ARG BASE_TAG=8.5-204 +ARG BASE_TAG=8.5-218 ARG BUILDER_IMAGE=registry.redhat.io/ubi8/go-toolset -ARG BUILDER_TAG=1.16.7-5 +ARG BUILDER_TAG=1.16.12-2 ARG GO_WORKDIR=/opt/app-root/src/go/src/github.com/ibm-messaging/mq-container ARG MQ_URL="https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/messaging/mqadv/9.2.0.5-IBM-MQ-Advanced-for-Developers-Non-Install-LinuxX64.tar.gz" ############################################################################### From 0152e5f89712137fa8864a6d322f5ced5b214e05 Mon Sep 17 00:00:00 2001 From: Alec Painter Date: Thu, 27 Jan 2022 11:25:41 +0000 Subject: [PATCH 3/5] Updated MQ_VERSION variable name for release info --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 46d12a3d..283e672d 100644 --- a/Makefile +++ b/Makefile @@ -537,8 +537,8 @@ update-release-information: sed -i.bak 's/ibm-mqadvanced-server:.*-amd64/ibm-mqadvanced-server:$(MQ_LTS_VERSION)-amd64/g' docs/security.md sed -i.bak 's/ibm-mqadvanced-server-dev.*-amd64/ibm-mqadvanced-server-dev:$(MQ_LTS_VERSION)-amd64/g' docs/security.md && rm docs/security.md.bak sed -i.bak 's/MQ_IMAGE_ADVANCEDSERVER=ibm-mqadvanced-server:.*-amd64/MQ_IMAGE_ADVANCEDSERVER=ibm-mqadvanced-server:$(MQ_LTS_VERSION)-amd64/g' docs/testing.md && rm docs/testing.md.bak - $(eval MQ_VERSION_3=$(shell echo '${MQ_VERSION_1}' | sed "s/\.//g")) - sed -i.bak 's/MQ_..._ARCHIVE_REPOSITORY/MQ_${MQ_VERSION_3}_ARCHIVE_REPOSITORY/g' .travis.yml && rm .travis.yml.bak + $(eval MQ_VERSION_2=$(shell echo '${MQ_VERSION_1}' | sed "s/\.//g")) + sed -i.bak 's/MQ_..._ARCHIVE_REPOSITORY/MQ_${MQ_VERSION_2}_ARCHIVE_REPOSITORY/g' .travis.yml && rm .travis.yml.bak sed -i.bak 's/MQ_LTS_VERSION=[0-9]\.[0-9]\.[0-9]\.[0-9]/MQ_LTS_VERSION=9.2.0.5/g' .travis.yml && rm .travis.yml.bak $(eval MQ_LTS_VERSION_1=$(shell echo '${MQ_LTS_VERSION}' | sed "s/\.//g")) sed -i.bak 's/MQ_...._EUS_ARCHIVE_REPOSITORY/MQ_${MQ_LTS_VERSION_1}_EUS_ARCHIVE_REPOSITORY/g' .travis.yml && rm .travis.yml.bak From d324b2b49a542ba380ce7099953a204cb3f7f673 Mon Sep 17 00:00:00 2001 From: Alex Mirski-Fitton Date: Mon, 6 Sep 2021 17:02:21 +0100 Subject: [PATCH 4/5] Add common name to SAN list for test cert --- test/tls/client-trust.jks | Bin 748 -> 1094 bytes test/tls/generate-test-cert.sh | 5 ++-- test/tls/server.crt | 30 +++++++++---------- test/tls/server.key | 52 ++++++++++++++++----------------- test/tls/server.p12 | Bin 2285 -> 2309 bytes 5 files changed, 44 insertions(+), 43 deletions(-) diff --git a/test/tls/client-trust.jks b/test/tls/client-trust.jks index 140b71ec48ab5bece0216a7eaa2a5eac1d7d5ece..8865ab7e18e044d4fdf458fca310b72989bfa89e 100644 GIT binary patch literal 1094 zcmXqLVsT<(WHxAGe#6G8)#lOmotKfFaX}OFU6v;1n?T{KKztD)#Ril*1QgoG#K-`o zwj*R14btEoR$hZh0}BL~$3UA!r0mxY?Z`l($;zj6HcipG^n>-Cm=zO~x&RZSf&mX3 z2gGtFPF4m3SvJmuHV?*BW)?;*7J=ZswKGLIcWBMqr*ud>W5S_^CT545c1sw{rp@*` z+VeO6)$xXd+Ad=64SFsX-dka)yD>OHddZo+YN>xFeLV8$;rRlJGMMH#7?Y8yoDNXCkJXVUb+W%hD!F_Hb zLu+}3lgDqF`fCB{I&zLbe-xMZw}GaY{1#Xp4iEHe4q5DJB#g# zzG8TEy+Ue%#ZCJ;s^$HPMHzYN_t!m_mYVfz=4;nhuA&_=vZ<&>X_l@h1BbPpieYM=Sy`Saz9ykAB9S+=^W=99|eHTfC!Qt8&# znkxT9_m_p(x5@QRn=^;izhQsg7j}hz>rNl^NtnQXUO8c}QK)tyd*?~E2R*W Fg#jix-Io9W literal 748 zcmezO_TO6u1_mY|W(3pR#i>PQsYSZUsYN9~vCM_++jALMBlJuSEP={a7&I|0F=%4! zVd7-iwQrK^+;4m@4S3l&wc0$|zVk9Na-=Hw?Q=49j-ml(*2 z^BP(j7#kTHni(3K8b*op8UeY67Emq@T}_Ni$i_3WGB7tW@-qNkz{S+W$jGqn@u{^6 zHfmjhS^bGO?p{l_{o=MCC?%MM8^Pc>i zU~0W#Yl23G+rial7j1olx0fiFU3hL6^Y#Vz`-M-we$y*5u5xqxFl|%0--hXHl8n3B zpWmIeb^F|+roUT@&vNpYo_ySSq3hy#gMFO|$NH z`d1g-KFY8m=efASPN(-?CzsTH$+XD)opfSNc4Ase)1@>+Q9JI?Zxe#f$(^1fm6UVH zMlV;Tnu(c_fe|@`fDr%;Aw~xG)S0Djr_c4rwEoO)OOxgE-Q1)0Zkx@1Q^V<+Ezaj! z<_Dj>Zov1Awf51aPo|GGw^_3ac-ilm;gs~leEO6V>%TU2_U^k`EhP8zcHGWr@scgI zg15egH5m#mJ}dI;)2nUC=S#o)&5*jvGJE-$S3GI@j-y3UmHc+BUSHC?oq?Pm>Tw{72S4Z}};MVwc`1zs9Pv+0L!QIU=F#!M& CSwLF= diff --git a/test/tls/generate-test-cert.sh b/test/tls/generate-test-cert.sh index a49be758..a813aa51 100755 --- a/test/tls/generate-test-cert.sh +++ b/test/tls/generate-test-cert.sh @@ -1,6 +1,6 @@ -#!/bin/bash +#!/bin/bash -ex # -*- mode: sh -*- -# © Copyright IBM Corporation 2018 +# © Copyright IBM Corporation 2018, 2021 # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -23,6 +23,7 @@ PASSWORD=passw0rd openssl req \ -newkey rsa:2048 -nodes -keyout ${KEY} \ -subj "/CN=localhost" \ + -addext "subjectAltName = DNS:localhost" \ -x509 -days 3650 -out ${CERT} # Add the key and certificate to a PKCS #12 key store, for the server to use diff --git a/test/tls/server.crt b/test/tls/server.crt index cba77d68..63532ea0 100644 --- a/test/tls/server.crt +++ b/test/tls/server.crt @@ -1,17 +1,17 @@ -----BEGIN CERTIFICATE----- -MIICpDCCAYwCCQC6vpJFnfYO6TANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDDAls -b2NhbGhvc3QwHhcNMTkwMzIxMTYxMzUxWhcNMjkwMzE4MTYxMzUxWjAUMRIwEAYD -VQQDDAlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCu -48qtIDwmihFqj2HY3dZjPfROA1MJ+D0c6aEA08ooOczthLB7XdZBQDapj8LFldyt -4ZMbTkqtF5QtPXmJY0wi39foLYlcGXPL1b7y3mypaFou88BcSM3VmfILKXhNeAlt -rXevnuT5kDU7sLVgKGhGwas20T1MU7d0I3bQ5z5c7egL76Hk9fYucjN6RkbwlrJ3 -TrCXrGIziofn3Zq1t51ygv21c80JD3XJ44YmuCrede4rhOS/4NpwRuZyiwpJ6tlv -0L0QSDGCmt2JT3ty28UAsGznFzC5Qu9KyaR+9Gk4aftiyKxrYWZkgtJmMRU+C1X2 -kFLOHsucGmJswjwubSR7AgMBAAEwDQYJKoZIhvcNAQELBQADggEBAEdlmXVGy86P -XIX5a4ZmHQ5Ns4wm7rY8vzUxlymEQ86En1PN1zAO9gV94tLyNeMptjsFEEo/uJhC -Yvg3l5TIr/WCiY2+2XsSHvnbXrlbF3S0fRHa9VaCMRKjzRT68uq2Y891906YGtUE -m6fCjHqVzX8qaplDf79aVkPydYaYOIZ1a/mCfQcD9XMZ/v5zI9IUDhdoq97bgPhB -gBOzWLI+hkzyU8jxKAFw1Hwi9lD/P6RXL5arNb/+arOgA3vTW+xGWGevgjVK1Ay9 -81beWiQmn0KbeLZxj+WJ9Nntlf1M4EqPYgsSYs/IlJTYS8W1B0mDJEoovPdFTryY -GyIuQEVcjUE= +MIICwzCCAaugAwIBAgIJAKnwG0VGiDelMA0GCSqGSIb3DQEBCwUAMBQxEjAQBgNV +BAMMCWxvY2FsaG9zdDAeFw0yMTA5MDYxNTIyMDlaFw0zMTA5MDQxNTIyMDlaMBQx +EjAQBgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBALLmDX3OB/4DlzJzKz/Edc5qVdjdIN/u8pApSQPevT0mAsSK1uw2MObeOo4C +DCBmabYeuvGzZ4t3SiejdsHK+qAYMFW51lxTbulv5kUPvTBOY2JCENkVDFjqcK8S +9ItI/UzTmnBolvZmUKzROHzA/pFb/jkhlzqJO+TqIBXKLF5gdFFTiHHcqfoUyVOV +n+49V8z6W2rokz4QIWa5Dlh6VS1B6VXdihJv5P9HV8P8FOtefhA85yaSVKlFS/AC +XRb5FmtmYHBnghLktHS71s/KcPeX27Q1NcKhmZMvHRH95hqEcP25S6SGu69eiCLk +xpbJKqG3fntfooLUDfR2PHQUJ7UCAwEAAaMYMBYwFAYDVR0RBA0wC4IJbG9jYWxo +b3N0MA0GCSqGSIb3DQEBCwUAA4IBAQBamIH23oDh1XxOeMPUEyPLHm5M8LM8FNhT +GEpf1ICy4TSLipSFhIs3hGzVt22zBBzU59apQ8rXUME5SK+9PLag/t/48rG1SfUA +VyYvaeu/cA5NQMWwuyCLqZL1MWn+BLsdAiNtbNHANesnl0i+vUb0GPzSP8soe3PP +N7Fh8SO3Qq6e9zT3iE2tP2OFxzcpg538Xn3qoVPJwmLIfBtvsiK07zqAWdqBWtt6 +cBXyagnmgKvOyv6sKAlTpwP9HqVem3XxZVrhm1KiPHs4Dnks6e79txmB8lqzvWu5 +tu4h2ePGJjqUy5JkkoDY0j6hALwEe3ZXBvJ6XUQDi9Hou2k+MaQd -----END CERTIFICATE----- diff --git a/test/tls/server.key b/test/tls/server.key index 69454569..feb2a461 100644 --- a/test/tls/server.key +++ b/test/tls/server.key @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCu48qtIDwmihFq -j2HY3dZjPfROA1MJ+D0c6aEA08ooOczthLB7XdZBQDapj8LFldyt4ZMbTkqtF5Qt -PXmJY0wi39foLYlcGXPL1b7y3mypaFou88BcSM3VmfILKXhNeAltrXevnuT5kDU7 -sLVgKGhGwas20T1MU7d0I3bQ5z5c7egL76Hk9fYucjN6RkbwlrJ3TrCXrGIziofn -3Zq1t51ygv21c80JD3XJ44YmuCrede4rhOS/4NpwRuZyiwpJ6tlv0L0QSDGCmt2J -T3ty28UAsGznFzC5Qu9KyaR+9Gk4aftiyKxrYWZkgtJmMRU+C1X2kFLOHsucGmJs -wjwubSR7AgMBAAECggEAH9t6teKjUlngJksMBdcTEGzerb9JRw2jBDtCisYJkx5E -SBfdlftX5fbufiCj2B4eXsYyZ8zxKWqcIUmLdA1Udx3TVIXG+bHhOAYtjEwb+xf5 -JYhdR/IzHG+4eXQKaAIvpXztyl3lU9iC+eaMg4GYzRrGN2wSAG9XgZ5cLF2TLJYU -jPxp7goz9X6V57aL2G/EFlbFsMaI/6cW7+XoRdo0I4N2Z766gz7GgyxtTVwR5Peq -LjOpqSNS0W57KJxReURfySok9CP1DfyigopsYW8O4jGVDDRLdiN3I8+JhWya2E0j -96hHpN04Oz6HnMm7bdZDVtkZCOiu6xIzLJJxZ4o+kQKBgQDYqOA/hSod7s7w4LBE -A6Mp+e0//PYH6/N9SKmSIgQNec9bMGI4yanoblMbg4GM1g7pkvjlC0nTdjnUbLkB -vIvtVh3XwTIlrZ/4lc7VB23/hmKU+lRc+NJP5fgasAQu0W3+qp2cXo0pnHVwBEku -Z7FwDPX0JNDIi/Or2I7dt8JojQKBgQDOpU1AnIXv1/cToYK4nz8BWLxRxwLTxy5A -ucafNKacPlxb5luZRCExiPZwAM8Z3zI9o99rYXOPQmsnknZWJV66Zx0Vo0yTD1CT -DWMUj0ugI1wORNMhwZP6YBYWjAeupyU9a7FyU1Geg4sdQt5rMyAEQOoECc8x8foP -rySHuO/TJwKBgBjMM2ZxymFErQDa5rHSLMGoLmRtgodjlSnYwDfOluIn9/i67/MJ -+d11iyOSCKji8y/+t2gXw6plVLcgfohZWTaf7ah9H006sx2Tn+m4APoHGo9sm21M -uV2Vt7DuRnxJUiqcwo9cLxH9K1/Xzbx299MYWKpJ8G+TvR8FGUz9NE4dAoGAM5gs -KKSsAE1QwFMEG2qPRZvNMTHaL9w8XSbFQ7zWmI4tazihyCutifujZCWfj9sdZSyE -PQBQ5QT1UiUMbMfZ1fqm1V83YERjnsOp6Fk6zZnmgx2GBZiahNn2ydxekqni72nz -HRNWfphjZIPsmqFiLg2zIBz+4X6EK+RT35s6LeMCgYEAwF/9jX8kONW5KKZdoNHa -opkLpa9qkwTGQ9M3AZiRUjM4rtvggYt8FBEP+3BLDLHqfUOkPq82MCRXm+6Cz+sT -gyPnsPlAh/sr3Pys3olJbUDE9H24k1LU0CI/sSwAFkka0+Q7PVTTe/Dcavitrcrm -+fyiT2oSPZeHSjQE9iIW3OY= +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCy5g19zgf+A5cy +cys/xHXOalXY3SDf7vKQKUkD3r09JgLEitbsNjDm3jqOAgwgZmm2Hrrxs2eLd0on +o3bByvqgGDBVudZcU27pb+ZFD70wTmNiQhDZFQxY6nCvEvSLSP1M05pwaJb2ZlCs +0Th8wP6RW/45IZc6iTvk6iAVyixeYHRRU4hx3Kn6FMlTlZ/uPVfM+ltq6JM+ECFm +uQ5YelUtQelV3YoSb+T/R1fD/BTrXn4QPOcmklSpRUvwAl0W+RZrZmBwZ4IS5LR0 +u9bPynD3l9u0NTXCoZmTLx0R/eYahHD9uUukhruvXogi5MaWySqht357X6KC1A30 +djx0FCe1AgMBAAECggEAagD5A49+mtwjzigB+4H80Def8KVuomIi5psgAaQM+9u3 +DiC6ozKlHVeW2KiL6PLmNpzU5v0IINKpZP1uE/yjLxPGKDW6t/BUKww8JLXjw2jf +aMx+0TKwo0sfRA32S0YPmWNVAsBmm1AbA5vhXcK51QXuiInH406H5+d25ZJrYevF +liKWSjx9CM/0XO7t20j18mCa8RjBEdsZoHxHsoWNvFJ6DCR25cFShAhR7s4OtkUk +yELm1tYYrFOffUM0Q/Fp9uSlCHWMSqPtf/6NEfnszfFEtzDh/N+YqC1Bexv0XPsD +dBPOkUZjWA2Sc8Se1t2GLfrRURzj3GvWH1+GssjsAQKBgQDeIdyzQSqce4Kn0opa +vdS5moCiv3pyfNd0nYe0awgVos4kHY7/nBq0eyMZAatRHeD3DunVsw3LmvWyEw53 +app7MTTjVrYaadoBlB6jy2elyF5RcW2jGchZExoNh+0ZQWUiMbYEozPLQTy9ZxMz +t0OcZ1hHPngGgmj5TELZKkwEtQKBgQDOLLh7pdKrdudtim+o4H20jl5yYKl25Iq/ +DKVodwUd94cM7xAIOQJrx2XK/YPCfRkKRN1wxzAhYdIVkaaKDVhI8Jeu+H18QOa6 +5OlzzZcqJCtACpbVqLaDcmq8pRrAYekiwMIKwC95llvktjilvLfoUnQoXAaX8E8B +yCSUvDh3AQKBgQCxa0h04DLho4Da/D3HdmHHERF3bAqoEPCh0wTF5MsjRNLzY6yI +mq11w/hni77C3mOF0SKRrh7xpcZiQfhHBx12EfpVLjfq5uraYe0LFHanol87G6bf +I8Oy6Z/geNW2W1YktqHUGGpRCL0z5nUe1FyrOpv2431Ibbbcj73A6JipFQKBgHdl +vJyWpk73+AQe1JUnFIU4oYd5ZQpeRd9n8m5x5ru4+jPKSi2I3lcOTWvlrqU2Dwc8 +ZEUIhV3/qUsmYxy1p7ft5NnGO912NGhtYqjWmcEk2wsmVr17C99JpniC4OAik4G1 +wWm6bIPsSGFGCb4pcROQlIY+7O6WkxqEDnM4ITcBAoGAHXBKmadFpupUeGSkCwEo +/VjeI4QoKKcWj9K8z8ifCVPz1FiQ1AJ91WMTM7PAmpEDX058Hor9xxJ2bEtQFwUS +QKvjeU+/Ig0TWjsJBgBPvc0xYLaJptAbjvG4a5nBn7hwbRzLTcKx2OVTmdAkz00H +1lq8cwizfwNgt8ldFFDDRvw= -----END PRIVATE KEY----- diff --git a/test/tls/server.p12 b/test/tls/server.p12 index 48ffc16ee4ecaff6daa63c9c22468c6f2d097c05..4d1c0479d25cb02067048534217b58b388dc41b4 100644 GIT binary patch delta 2240 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 From 9eeab37e32d3c74914debab5b8e63ac79d015d56 Mon Sep 17 00:00:00 2001 From: Alex Mirski-Fitton Date: Mon, 6 Sep 2021 17:29:58 +0100 Subject: [PATCH 5/5] Handle window between cont. start & port binding --- test/docker/docker_api_test_util.go | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/test/docker/docker_api_test_util.go b/test/docker/docker_api_test_util.go index 597d1552..7814212c 100644 --- a/test/docker/docker_api_test_util.go +++ b/test/docker/docker_api_test_util.go @@ -798,12 +798,23 @@ func copyFromContainer(t *testing.T, cli *client.Client, id string, file string) } func getPort(t *testing.T, cli *client.Client, ID string, port int) string { - i, err := cli.ContainerInspect(context.Background(), ID) - if err != nil { - t.Fatal(err) + var inspectInfo types.ContainerJSON + var err error + for attemptsRemaining := 3; attemptsRemaining > 0; attemptsRemaining-- { + inspectInfo, err = cli.ContainerInspect(context.Background(), ID) + if err != nil { + t.Fatal(err) + } + portNat := nat.Port(fmt.Sprintf("%d/tcp", port)) + if inspectInfo.NetworkSettings.Ports[portNat] == nil || len(inspectInfo.NetworkSettings.Ports[portNat]) == 0 { + t.Log("Container port not yet bound") + time.Sleep(1 * time.Second) + continue + } + return inspectInfo.NetworkSettings.Ports[portNat][0].HostPort } - portNat := nat.Port(fmt.Sprintf("%d/tcp", port)) - return i.NetworkSettings.Ports[portNat][0].HostPort + t.Fatal("Failed to get port") + return "" } func countLines(t *testing.T, r io.Reader) int {