From fcb25e18424f8ba564a09d6961d9534a5ff93187 Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Thu, 29 Dec 2022 00:29:49 -0500 Subject: [PATCH 1/5] chore: remove references to ubuntu 18.04 ahead of EOL While we will still build for 18.04, we will now stop testing against it. Instead, we will test against 20.04, the next EOL release after 18.04. Once Ubuntu 18.04 is EOL, any references to it will also be removed. Note that 18.04 support was already deprecated in Dokku 0.28.0, so this change is just acknowledging that deprecation. --- .github/workflows/ci.yml | 10 +++++----- README.md | 2 +- Vagrantfile | 2 +- bootstrap.sh | 2 +- contrib/build-base.Dockerfile | 2 +- deb.mk | 2 +- docs/deployment/builders/dockerfiles.md | 6 +++--- docs/development/testing.md | 4 ++-- docs/getting-started/install/debian.md | 4 ++-- docs/getting-started/install/dreamhost.md | 4 ++-- docs/getting-started/installation/index.md | 2 +- docs/networking/port-management.md | 2 +- tests/ci/setup.sh | 16 ++++++++-------- 13 files changed, 29 insertions(+), 29 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4d064050e..56cd3df05 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,7 @@ on: jobs: build: name: build - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 outputs: matrix: ${{ steps.set-matrix.outputs.matrix }} strategy: @@ -49,7 +49,7 @@ jobs: unit-tests: name: unit.${{ matrix.index }} needs: build - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: ${{fromJson(needs.build.outputs.matrix)}} @@ -89,7 +89,7 @@ jobs: docker-deploy-tests: name: docker needs: build - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 strategy: fail-fast: false @@ -115,7 +115,7 @@ jobs: go-tests: name: go.${{ matrix.index }} needs: build - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: @@ -156,7 +156,7 @@ jobs: publish-test-results: name: publish-test-results needs: unit-tests - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 # the build-and-test job might be skipped, we don't need to run this job then if: success() || failure() diff --git a/README.md b/README.md index 7c5fa2e5a..168d8ad8d 100644 --- a/README.md +++ b/README.md @@ -74,7 +74,7 @@ Support us with a monthly donation and help us continue our activities. [[Become A fresh VM running any of the following operating systems: -- Ubuntu 18.04 / 20.04 / 22.04 x64 - Any currently supported release +- Ubuntu 20.04 / 22.04 x64 - Any currently supported release - Debian 10+ x64 - Arch Linux x64 *(experimental)* diff --git a/Vagrantfile b/Vagrantfile index 51ddce82f..3cd1c44d7 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -1,7 +1,7 @@ # -*- mode: ruby -*- # vi: set ft=ruby : -BOX_NAME = ENV["BOX_NAME"] || "bento/ubuntu-18.04" +BOX_NAME = ENV["BOX_NAME"] || "bento/ubuntu-20.04" BOX_CPUS = ENV["BOX_CPUS"] || "1" BOX_MEMORY = ENV["BOX_MEMORY"] || "1024" DOKKU_DOMAIN = ENV["DOKKU_DOMAIN"] || "dokku.me" diff --git a/bootstrap.sh b/bootstrap.sh index 99277b027..96d1c4e6c 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -3,7 +3,7 @@ set -eo pipefail [[ $TRACE ]] && set -x # A script to bootstrap dokku. -# It expects to be run on Ubuntu 18.04/20.04 via 'sudo` +# It expects to be run on Ubuntu 20.04/22.04 via 'sudo` # If installing a tag higher than 0.3.13, it may install dokku via a package (so long as the package is higher than 0.3.13) # It checks out the dokku source code from GitHub into ~/dokku and then runs 'make install' from dokku source. diff --git a/contrib/build-base.Dockerfile b/contrib/build-base.Dockerfile index f553a8cc9..e36bf9d90 100644 --- a/contrib/build-base.Dockerfile +++ b/contrib/build-base.Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:18.04 +FROM ubuntu:20.04 ENV DEBIAN_FRONTEND=noninteractive diff --git a/deb.mk b/deb.mk index 635ab036f..ba047238c 100644 --- a/deb.mk +++ b/deb.mk @@ -20,7 +20,7 @@ install-from-deb: @echo "--> Installing dokku" wget -qO- https://packagecloud.io/dokku/dokku/gpgkey | sudo tee /etc/apt/trusted.gpg.d/dokku.asc - @echo "deb https://packagecloud.io/dokku/dokku/ubuntu/ $(shell lsb_release -cs 2>/dev/null || echo "bionic") main" | sudo tee /etc/apt/sources.list.d/dokku.list + @echo "deb https://packagecloud.io/dokku/dokku/ubuntu/ $(shell lsb_release -cs 2>/dev/null || echo "focal") main" | sudo tee /etc/apt/sources.list.d/dokku.list sudo apt-get update -qq >/dev/null sudo DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true apt-get -qq -y --no-install-recommends install dokku diff --git a/docs/deployment/builders/dockerfiles.md b/docs/deployment/builders/dockerfiles.md index 05b1f2ce9..f6f0e5a71 100644 --- a/docs/deployment/builders/dockerfiles.md +++ b/docs/deployment/builders/dockerfiles.md @@ -121,7 +121,7 @@ dokku docker-options:add node-js-app build '--build-arg NODE_ENV=production' Once set, the Dockerfile usage would be as follows: ```Dockerfile -FROM ubuntu:18.04 +FROM ubuntu:20.04 # set the argument default ARG NODE_ENV=production @@ -133,7 +133,7 @@ RUN echo $NODE_ENV You may also set the argument as an environment variable ```Dockerfile -FROM ubuntu:18.04 +FROM ubuntu:20.04 # set the argument default ARG NODE_ENV=production @@ -210,7 +210,7 @@ worker: bin/run-worker.sh And `Dockerfile`: ```Dockerfile -FROM ubuntu:18.04 +FROM ubuntu:20.04 WORKDIR /app COPY . ./ CMD ["bin/run-dev.sh"] diff --git a/docs/development/testing.md b/docs/development/testing.md index e19554676..dd6998092 100644 --- a/docs/development/testing.md +++ b/docs/development/testing.md @@ -9,11 +9,11 @@ We maintain the Dokku test harness within the `tests` directory: ## Continuous Integration -All pull requests have tests run against them on [GitHub Actions](https://github.com/features/actions), a continuous integration platform that provides Docker support for Ubuntu Trusty 18.04. +All pull requests have tests run against them on [GitHub Actions](https://github.com/features/actions), a continuous integration platform that provides Docker support for Ubuntu Focal 20.04. If you wish to skip tests for a particular commit, e.g. documentation changes, you may add the `[ci skip]` designator to your commit message. Commits that _should_ be tested but have the above designator will not be merged. -While we do provide official packages for a variety of platforms, as our test suite currently runs on Ubuntu Trusty 18.04, we only provide official installation support for that platform and the latest LTS release of Ubuntu (currently 20.04). +While we do provide official packages for a variety of platforms, as our test suite currently runs on Ubuntu Focal 20.04, we only provide official installation support for that platform and the latest LTS release of Ubuntu (currently 20.04). ## Local Test Execution diff --git a/docs/getting-started/install/debian.md b/docs/getting-started/install/debian.md index e0c39e019..23e86f9dd 100644 --- a/docs/getting-started/install/debian.md +++ b/docs/getting-started/install/debian.md @@ -12,8 +12,8 @@ wget -nv -O - https://get.docker.com/ | sh # install dokku wget -qO- https://packagecloud.io/dokku/dokku/gpgkey | sudo tee /etc/apt/trusted.gpg.d/dokku.asc -OS_ID="$(lsb_release -cs 2>/dev/null || echo "bionic")" -echo "bionic focal jammy" | grep -q "$OS_ID" || OS_ID="bionic" +OS_ID="$(lsb_release -cs 2>/dev/null || echo "focal")" +echo "focal jammy" | grep -q "$OS_ID" || OS_ID="focal" echo "deb https://packagecloud.io/dokku/dokku/ubuntu/ ${OS_ID} main" | sudo tee /etc/apt/sources.list.d/dokku.list sudo apt-get update -qq >/dev/null sudo apt-get -qq -y install dokku diff --git a/docs/getting-started/install/dreamhost.md b/docs/getting-started/install/dreamhost.md index aec0d306d..57c3c7ff5 100644 --- a/docs/getting-started/install/dreamhost.md +++ b/docs/getting-started/install/dreamhost.md @@ -19,7 +19,7 @@ source openrc.sh # Set the environment variables for DreamHost Cloud This allows OpenStack client to connect to DreamHost API endpoints. The command below creates a new server instance named `my-dokku-instance` -based on Ubuntu 18.04, with 2 GB RAM and 1 CPU (the flavor called +based on Ubuntu 20.04, with 2 GB RAM and 1 CPU (the flavor called `supersonic`), opening network port access to HTTP and SSH (the `default` security group), and the name of the chosen SSH key. This key will be automatically added to the new server in the @@ -28,7 +28,7 @@ be reused by Dokku. ```sh openstack server create \ - --image Ubuntu-18.04 \ + --image Ubuntu-20.04 \ --flavor gp1.supersonic \ --security-group default \ --key-name $YOUR_SSH_KEYNAME \ diff --git a/docs/getting-started/installation/index.md b/docs/getting-started/installation/index.md index 587b3138f..41db442a3 100644 --- a/docs/getting-started/installation/index.md +++ b/docs/getting-started/installation/index.md @@ -9,7 +9,7 @@ Dokku is an extensible, open source Platform as a Service that runs on a single To start using Dokku, you'll need a system that meets the following minimum requirements: - A fresh installation of any of the following operating systems: - - [Ubuntu 18.04/20.04/22.04](https://www.ubuntu.com/download) + - [Ubuntu 20.04/22.04](https://www.ubuntu.com/download) - [Debian 10+ x64](https://www.debian.org/distrib/) - A server with one of the following architectures - AMD64 (alternatively known as `x86_64`), commonly used for Intel cloud servers diff --git a/docs/networking/port-management.md b/docs/networking/port-management.md index 80dc35b92..61f3d6683 100644 --- a/docs/networking/port-management.md +++ b/docs/networking/port-management.md @@ -147,7 +147,7 @@ Dokku will extract all tcp ports exposed using the `EXPOSE` directive (one port For example, if the Dokku installation is configured with the domain `dokku.me` and an application named `node-js-app` is deployed with following Dockerfile: ``` -FROM ubuntu:18.04 +FROM ubuntu:20.04 EXPOSE 1234 RUN python -m SimpleHTTPServer 1234 ``` diff --git a/tests/ci/setup.sh b/tests/ci/setup.sh index 288fb2b3a..de17d564c 100755 --- a/tests/ci/setup.sh +++ b/tests/ci/setup.sh @@ -11,49 +11,49 @@ install_dependencies() { DOCKER_IMAGE_LABELER_VERSION=$(grep DOCKER_IMAGE_LABELER_VERSION "${ROOT_DIR}/Makefile" | head -n1 | cut -d' ' -f3) DOCKER_IMAGE_LABELER_PACKAGE_NAME="docker-image-labeler_${DOCKER_IMAGE_LABELER_VERSION}_amd64.deb" if [[ ! -f "$ROOT_DIR/build/${DOCKER_IMAGE_LABELER_PACKAGE_NAME}" ]]; then - curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/bionic/docker-image-labeler_${DOCKER_IMAGE_LABELER_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${DOCKER_IMAGE_LABELER_PACKAGE_NAME}" + curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/focal/docker-image-labeler_${DOCKER_IMAGE_LABELER_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${DOCKER_IMAGE_LABELER_PACKAGE_NAME}" fi HEROKUISH_VERSION=$(grep HEROKUISH_VERSION "${ROOT_DIR}/Makefile" | head -n1 | cut -d' ' -f3) HEROKUISH_PACKAGE_NAME="herokuish_${HEROKUISH_VERSION}_amd64.deb" if [[ ! -f "$ROOT_DIR/build/${HEROKUISH_PACKAGE_NAME}" ]]; then - curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/bionic/herokuish_${HEROKUISH_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${HEROKUISH_PACKAGE_NAME}" + curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/focal/herokuish_${HEROKUISH_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${HEROKUISH_PACKAGE_NAME}" fi LAMBDA_BUILDER_VERSION=$(grep LAMBDA_BUILDER_VERSION "${ROOT_DIR}/Makefile" | head -n1 | cut -d' ' -f3) LAMBDA_BUILDER_PACKAGE_NAME="lambda-builder_${LAMBDA_BUILDER_VERSION}_amd64.deb" if [[ ! -f "$ROOT_DIR/build/${LAMBDA_BUILDER_PACKAGE_NAME}" ]]; then - curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/bionic/lambda-builder_${LAMBDA_BUILDER_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${LAMBDA_BUILDER_PACKAGE_NAME}" + curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/focal/lambda-builder_${LAMBDA_BUILDER_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${LAMBDA_BUILDER_PACKAGE_NAME}" fi NETRC_VERSION=$(grep NETRC_VERSION "${ROOT_DIR}/Makefile" | head -n1 | cut -d' ' -f3) NETRC_PACKAGE_NAME="netrc_${NETRC_VERSION}_amd64.deb" if [[ ! -f "$ROOT_DIR/build/${NETRC_PACKAGE_NAME}" ]]; then - curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/bionic/netrc_${NETRC_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${NETRC_PACKAGE_NAME}" + curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/focal/netrc_${NETRC_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${NETRC_PACKAGE_NAME}" fi PLUGN_VERSION=$(grep PLUGN_VERSION "${ROOT_DIR}/Makefile" | head -n1 | cut -d' ' -f3) PLUGN_PACKAGE_NAME="plugn_${PLUGN_VERSION}_amd64.deb" if [[ ! -f "$ROOT_DIR/build/${PLUGN_PACKAGE_NAME}" ]]; then - curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/bionic/plugn_${PLUGN_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${PLUGN_PACKAGE_NAME}" + curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/focal/plugn_${PLUGN_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${PLUGN_PACKAGE_NAME}" fi SSHCOMMAND_VERSION=$(grep SSHCOMMAND_VERSION "${ROOT_DIR}/Makefile" | head -n1 | cut -d' ' -f3) SSHCOMMAND_PACKAGE_NAME="sshcommand_${SSHCOMMAND_VERSION}_amd64.deb" if [[ ! -f "$ROOT_DIR/build/${SSHCOMMAND_PACKAGE_NAME}" ]]; then - curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/bionic/sshcommand_${SSHCOMMAND_VERSION}_all.deb/download.deb" -o "$ROOT_DIR/build/${SSHCOMMAND_PACKAGE_NAME}" + curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/focal/sshcommand_${SSHCOMMAND_VERSION}_all.deb/download.deb" -o "$ROOT_DIR/build/${SSHCOMMAND_PACKAGE_NAME}" fi SIGIL_VERSION=$(grep SIGIL_VERSION "${ROOT_DIR}/Makefile" | head -n1 | cut -d' ' -f3) SIGIL_PACKAGE_NAME="gliderlabs-sigil_${SIGIL_VERSION}_amd64.deb" if [[ ! -f "$ROOT_DIR/build/${SIGIL_PACKAGE_NAME}" ]]; then - curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/bionic/gliderlabs-sigil_${SIGIL_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${SIGIL_PACKAGE_NAME}" + curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/focal/gliderlabs-sigil_${SIGIL_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${SIGIL_PACKAGE_NAME}" fi PROCFILE_VERSION=$(grep PROCFILE_VERSION "${ROOT_DIR}/Makefile" | head -n1 | cut -d' ' -f3) PROCFILE_UTIL_PACKAGE_NAME="procfile-util_${PROCFILE_VERSION}_amd64.deb" if [[ ! -f "$ROOT_DIR/build/${PROCFILE_UTIL_PACKAGE_NAME}" ]]; then - curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/bionic/procfile-util_${PROCFILE_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${PROCFILE_UTIL_PACKAGE_NAME}" + curl -L "https://packagecloud.io/dokku/dokku/packages/ubuntu/focal/procfile-util_${PROCFILE_VERSION}_amd64.deb/download.deb" -o "$ROOT_DIR/build/${PROCFILE_UTIL_PACKAGE_NAME}" fi sudo apt-get update -qq From e103d9b11b7c2e109e9be5c20243872e3d4feab4 Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Thu, 29 Dec 2022 01:55:06 -0500 Subject: [PATCH 2/5] chore: suppress warnings about default branch --- tests/unit/nginx-vhosts_12.bats | 5 +++++ tests/unit/test_helper.bash | 1 + 2 files changed, 6 insertions(+) diff --git a/tests/unit/nginx-vhosts_12.bats b/tests/unit/nginx-vhosts_12.bats index d9d1dcda3..1fd0fd2d3 100644 --- a/tests/unit/nginx-vhosts_12.bats +++ b/tests/unit/nginx-vhosts_12.bats @@ -27,6 +27,11 @@ teardown() { echo "status: $status" assert_success + run /bin/bash -c "git config --global init.defaultBranch master" + echo "output: $output" + echo "status: $status" + assert_success + run /bin/bash -c "git init" echo "output: $output" echo "status: $status" diff --git a/tests/unit/test_helper.bash b/tests/unit/test_helper.bash index 98847fea1..2c1f34a8b 100644 --- a/tests/unit/test_helper.bash +++ b/tests/unit/test_helper.bash @@ -326,6 +326,7 @@ deploy_app() { pushd "$TMP" &>/dev/null || exit 1 [[ -z "$CUSTOM_TMP" ]] && trap 'popd &>/dev/null || true; rm -rf "$TMP"' RETURN INT TERM + git config --global init.defaultBranch master git init git config user.email "robot@example.com" git config user.name "Test Robot" From fab08909975a302020e2f198847b8780476b0292 Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Mon, 16 Jan 2023 00:29:52 -0500 Subject: [PATCH 3/5] fix: use updated ssl crt/key pairs The commands to generate these in the future are as follows: openssl x509 -text -in server.crt openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout server.key -out server.crt -subj '/CN=dokku.me' -days 3650 openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout server.key -out server.crt -subj '/CN=*.dokku.me' -days 3650 openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout server.key -out server.crt -subj '/CN=test.dokku.me' -days 3650 -addext 'subjectAltName = DNS:www.test.dokku.me, DNS:www.test.app.dokku.me' --- tests/unit/server_ssl.tar | Bin 10240 -> 10240 bytes tests/unit/server_ssl_sans.tar | Bin 10240 -> 10240 bytes tests/unit/server_ssl_wildcard.tar | Bin 10240 -> 10240 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/tests/unit/server_ssl.tar b/tests/unit/server_ssl.tar index 855a332104c26460b88e092a7e54c30b1d144750..a70087e605c642e306b5b67ebb4ddca1f40f1f50 100644 GIT binary patch literal 10240 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 literal 10240 zcmeH~Ne`pg5y$(?r|3J%up2n!z-Bf-HnZQ@F<>ypte-ya9wjrQnMpK?I#MJ*2?6gx zQS~dRfAJGC70;!3{**mmUw+U)-{VA*U*0>6rqEySzb)YeMSa0=k|a(PO48I96eBPa z{qhz4LH_*4>^!}a=hv@amZW+n{hu@VPwT%i`u}tCw{L@&WYzd8NRF$XRe^J*@3Rn4 zRWWY_f$K;?utg~mtPW#@a(6j{uiCM0Z!){0JZF1nPUKl&Ppe=@qHo)>v}!)&9g+*) z#yQNB1Rm%%ex8ybUa~v&h+HWEy#0NR-+;rf_pCv(JR^<}~nDrOpiC z+8byj?7i*a;HcpHocEhKC}@5k*Ix+>`lGo1N?6bz#r0=lRh4uD94ZUfQNF4vA=(lT zz0<>Sq{@pcx4tjXxj}uWOgM?n67xfIFT2QQo;i9cNF(hmshJS}jQ zs4yD7f`zv)%k$|!;yaUYn|wjlJ$d%CNKhM}8W|b&yvMA6A7~x>@}&={S0!tA z`h=BB?eY<`){!y0d_UmhM9U6gr(6Yij+0i=jx>FU)q2T{cNU~GZ*$^113brbC3h@* z`vRR^k8n4T>-wCkrm2|o3mzQ7Zbj*sR0Vh8Intw8=ODR=uL!PFsVeD}iA`nAVp39!^LMxy@~pL5mOLb z(XtfGEcUPZL0m=hwTq^+bNaZq^R$tSf&?}%Lx!u^izwr!T?nMBFqbyjHz`$xo79D% zecYzY=u(rOl(e1!Bo8A&5g)eT>bh=}2MY;!6v+2vLXD}#l&-lDk0A}4GHcu+O^C|J zTM+03Ytc{Q9NVIlf4ixDD0wE0hZe#HfX)66 zeJ@^;A^yIg{r{BZ|Cy&h{Zs$jV*gPO{U-ANM*j&MBYx3;lK8IwIQ7y0AC-?^+x`Br z{H*`ZmHTQrs{hviueucds|S#V^(`2jF1$+^H&-N$+lfl`R3KS8Vds-8@bT5<-$mnE zWGm4*cRpLmL}tm;MT6G%397=ekcP)H(}*^)T}vV_=`t)Zl^&*<%VWQ<@SZF7IcTj^ZG|_|7 zb2acC=tg018u7PyhF>8~dTU?-H4xKwjZen-G`BWKhP$)S357#TC^TE(vYT z+mL7PVI6aoEm_8j+Exo5V(8hTR%&OVyfiT1^6s#)XCGi`Rymkoqqyf^1V_nDYmA_< zl{Ef53+4R+w*1B6Qm?%0KE?1+2DEx~`<&2kv>hI$V#LW2oxHJOy|s@ zVKqFf#UILNRq(7kBlOPKMSkPuU_|kBJK*e0S#ad1$%)vm&UK{x?d*olZGom7zHe-a z8(vi94ZKW<%~Lvxq>YcD3AtJpo7S#u$QTnMwvD|qc>VkSIwAq(?JsMZKcVc*^C>*_QD-z(C3_UEAToT)ufeJKXNyhSm@MZBksqv_wD8fqlGFYa8kJ>K2@qr?MP zOv!;E4X1}it#dlf-oyv4C?!p$H{DNeD`a-UWy9j#v9ZR#r>+*o3F8}26TZvxE|w#<605=fBi*c@>eMbkk_?AqHf z?7`1^whzse)W#xlF-~U5+)mKg#qJV#OnHY-dsy<}Vc?Rj^Oamt_=47S6u?`4Ry{d_ z#p0sPNPD@IAe@LsF0gkuO4y9kT`oQ;t3ibuaCdB3&->S_=eY!ian;0JZ<&x0l)kdI z2HtOPT<1kc2hpe@3kw~K9(A4so_XFkfLrgNc8y?|@$Qvfv4>OcC%7q0H|q{YJv|wN z%mlsnnnHI|1_2)A?&ymfWS#?a!E1L%MvPrl@hH=Jy&N_ANggvgmN2vRIzpFJeAt(r zbHIe6es@SUwCTtDXR13IK`w&n%<`yjW#Dqc=4}8hFX6MXVz6YuyQU-i`sxf)GwlRL zRHLenvVxLnx_5zWt1Oeh1Ot`0tSVN_m5M1A9~`;%R~j#^IGynekh6y0H1wCw><^{p z*Ru3E{t);O_z?II_z?II_z?II_z?II_z?II_z?II_z?II_z?II_z?II_z?II_%8_j E1L>>XWdHyG diff --git a/tests/unit/server_ssl_sans.tar b/tests/unit/server_ssl_sans.tar index ae50b7a9a4695e2767274b31c6f55db085ad6fa1..61543392f5e85a37e1f083e006e26ecef6d78ef2 100644 GIT binary patch literal 10240 zcmeI0N7LiTk%s4tUom&aF1$O!dk+xiqJRehlJNG|i`_D-ooQ*K71Bm*>{k~MRYjoi zW@YA+HJ8&?PJfu^=O5GbQbzf66<{BH1XI{v5eznS`f>F4|#`~T_wKlAAyit%$__|3oshW*y= zf4N6-4E^Q5+aHHu^p{_upL@+eH~as&{r}@zV+Bbuf8_+%S44$leBpa9U?_^{@f^oo zT+QqX%hXEXJzNcWK%KlMtQdpl=2Qc%T003jJMYA*)+b7{0*2F7ZNWu#UvQ zfxzs$SxEP*;P5U(mZ|XYCGnY3+@aIBn8Wbn-Smy!@RRh@cL9IuH2&IYu=OFfOu*LW zon;JzkKAXDI%^`)Q;G&_76yA=D-VN#B+eTpz*91mcLbJk0*1j9j^CMY6Evp(e5b=F zH{Zlq0vjUMD8`zZj8eQio@;oC0V_kM0P#?Q4!DuJY{8)Z!%NI&g&J^+eL1~ydG69pwa)!r;lyph<+wa@XJ$r0of zCBvsKd>CGhDWIWdrnL#!rdI}Vzx4xmyG?Zv$C!**FF1UQrHbCL`-Dt5hi0mia6Yv# zTup^exQ+tFF>D?^ktWZW4p22R(4Ww<`b5*^@T=J@ciZ2SM!=xlXWFC+w+33vl~;Ug zYN3i;Fr<93bC~0fF(<%Lnh?Ameu*0Vt-x_8WO0tI2Ujn_7E%#+qwpu!@uX8U7^yP6 z`_TEbu@DBywdZ028AlK*(Ov=vg78Ie&3^Bh`36Iq(kzmo|mRVxFlyp+;Da-8)?mA7nv5$;Y3x^ zJpnbyX9y`y0-`{%@XYX4JL^p6F}V6ro;`3Ans%O#l1MpK@USt1^H|R#UgTijQr`j6 zr7FfT8(Bx;8HZteOi~R+k_;C5=3E6|J0Z(D6JAzVuB7O;qGEL<0iSA2tDz=vT}<`O zab(XBB%TTDe=zwo*Zw}&HCU#i1lDJGfN^Bd;EnHZ6C7tYxRDd00xeD)N+J`|U+$J7 z3#`B3XWiV<0?pSyyL*$%%nJOioBlRfd}0Ov@l2MHjJsNQBgUw=%U6T(LYi|*(>Fd- z0AX2mvYA}&w)-7>(<{haLcgHui-sS*BW|y4J%=~HCyTkWd7u^7c87SF%JOblF$QR` zRsvu6$6V(@+#a2CK2mDwh270c7YXYrxO>NBx zlFlEe*CvKbzDxDxEGt7Yt65o}4~jD*$ov8GBpr)&@9wUm@Hk&jqEQau(u8Bu%9YJP zk>$vf2_11k95W{IDw)$+ta_DegVGE5*7L4LE+R2Pir8Rj*Icm_i0%lv5{gW;Ph@wD zIJ0w5rL`sO`K2Of@2$DK{U+;T21)x)v)%=l_xWb>GDy|MMF7^+pwG9P>UCv97=(b9 zm$F!&ROJ0OdU(1F9+lUP;8{kc^}@LCC?3nY!Xqe~kk0|gEhP~4x(Tw7(+Sz5KgBZR<=ji9Bab1y9>;CspxO#b(2^q=FB z|D}KZ9scXe^Ix}s@BH_B?*9w_5h#THj{hL|i~s(07Wn&5`o3-d#DBJ{+&}F1t0u&M z$39}(5h02S~f zqWT%20)9kPKLb>sVEKEZ`Wc`CeneD11606|i0Ws63iuIG{R~h6KO(B10V?1}MD;U3 z1^kGpehXCJx3Dx03}K?h=*`8upPOmSU2~5B(q}SX9lRF~*3CTewE9S|1=PVMqRUTa zuEHg`TqnHwgr6Xf<&n5a?{TPR+$$Jed>}5$iN6n0u9KW;A%z|+;tP@oQ{Iz2)SMIF zd@&#G)j>9t4?;VFOqXa;{B1?MY`}ouhemf$&mhXcNBt-ef+bfqaaWX}&q{BOq)po< zcF(zQOM(orw!u%a#qcU#yk+>LZF)lG2YAAhsZd}gqWmLhOANi>TcMI%j}m9Y6`Sr~ zAlajaR>03O8VNyHDSIfZ4iJj{See-7a8m{kJP+)+gMz*~i?KIX`7yf{_6$Bb8BbC= z%+8{=xC5NoXP8n>o}>VF2?;{KBC=onyMxp$+G_h_a@Lm_0fZ*dC&t zy+z_Ql!n-o;!XAeLv*^yvu+6ziA1Bj2dY(J>)r=PO*PWM8eqIhrQf(LRpu$_4Sx-)}_R&Swfb6s8{>6T_?k6hqdkQ|&XtD176=RU)^cJ&&JbxFb7rDWV0CIY# z16cP)2rqEJ5JcNvB<3U4P1^_Ew7I<&-f>bGdhw1KTBXTi12l8NCU@ppa!Tlns05Vn zp9StE^RgaNYy--xG6{)%weQs!l|&>> zy(5ZFxcahvSMup|vAw#xsWl;k4~x#(qJU&i%*iG{>i zSGoIpyr(UhRi8PfFH6Wfeu{u#llry4tmalwk*#8<7L2-WrOUxlm_lb+pcp)!HX}%? zV*;8>b`9q4+890utOnskW_E*Wx!_We5x)! zsy2a$;8TB1ZcUd323*}ZB$Mq|o7KKIHPwvUY7R%>2l@a%rwExfY~HlJMRxB}e72cBJt?tCgVs(WOk)bD-$u*BI3g%O9b@i)PlnuQ@u(`uSXs5y8$To|wGe z7!P^{18`bCLOt0G9+YvTHDS)9dVs~*=d`m)+?T~stTe$gnW3o(DOG8S;2}Jh6(`q0 zP$b|C!3=@>!l(0v&* zRQY}Iu}~HXF1#4$s0eC*zC<+h8MmKzPMUFZv_9u$GKxpuKUn6MJFDTz@j)KB9lO}Isa~~^;G-X-OKL$4qJ7eDh=f?FbCIPyegu7Wd*MZ+5dC4-S zoYNF(s3fxgtHAzUo$~jqo3D{C1-=ycQs7I0F9p67_)_3YfiDHV6!=o$OM$;A@JDEz B)uI3Z literal 10240 zcmeH}#}cDR5{CQCQ}mtK!Gk#Lq3{SJyg)aM1j0K3;^~*}Uehz{W;bFF8=*RgQ2j|o z>dRF9`3o}L$K^i$l8*D2|ItE^MU&*05{Jskrsw(s) z&x4N6!K!i~SI@wVbG+ACe?&tApfc|cva2S9V2d1Q`@oR9jo-nU%gq4dK;(fs@C?UT zMLQA#+g1h83(oSnz}HYXqCWsO%VX*MOQL++H;XKW)G#fx%?EM9|2;5&tv9t z=FMGmPuzr`bm7p^TWF$s<18^gW02lpwZW00;E9+ah@0t&gz2T5QFq_=i0^yCU-#Cy z6mgY6!uhJvljTq*sL3 zdxW1h=x+g&A^1PiQbnxRdCu@e&=}@VrJGvb*;PeV)}x=p3=WQI-6>+B`t5m`w{4y^e~Xbf#?haWcT1Q`E`) z9(i=5*y}!kNqW|`RNC28u2BCVS7P%qY|=p<$*!ak1YMlbK!eShi^iQY^`##Jt?O=M zWZaB^V)d5kLyNukVLn1f={W%8(%U)n&kd4^M>YlkE59D?>!8+A0s-V`ncuHNSOcUIau&q_0d4_Kc^BQ~|%Ly<^oSCVz^|58u_i7&! za13#}Yd*Y33p@nzHb>4}BX(u5g*ua^^uB5WNN2Tk5h#5Ly7tWsIHG6_weCm$^t`&9 z+|~WTk>bSVX zFEc0p5&C}niKg)PH{$=#z5aVM{pBzIU)|ro_nrSV?wiT~3;!o@jQN}Y)65V5r#}Aw zpK|_h;=lL$5C3;u@YQnE;PC&ini&0c1`vC2xC_wu;|2m#cykT17%-Kn_blG474CX! z*2OBV`GQubmylJ%N;{SBkjQe_*V-2Mt$AtAU9riQhxeVi)>)HSY7huMLbsmW!%I?7 z!p;U_-!d|B9WU{)Y1~wU7!tQsTlHb@U{rY2#Vk|h7HH%Jx#e4d3K!vmC~Ew_}JG593h`nr-X^VD9eJv`&b|0-Kr zczJXXZMk=P#F!3`Y424KxX`>^%V>;{oVX>YY~F?YYLD~76fKrqy%4F#TOpPJdCwP4 zg2rpNlwP?kB1YZrayAT{U~Z~n<;qSO0&OhM^z4;LxjchWW}CUuCDf@h@rgZ1n=YU@ zZq=uy)u$V1h`C2C`1*LSj`)6s+p7YspT~~BvQNvyZ>tk@)w4G)Jhvk|AfC&JLyZ%X zk6AxiRAH5mCTwg?N=5zTlg%xkIGn+3Br3orpTbh6qthRBdjXK~j(Cg4 z55h7BF0RDsj}gw&hvBW4K=rL+V52h%2Tx=@?E!m17<#vaIFJ?<>*e+eN!?t)_uPP& zK}qMAn<_h!Ra`ASD_jEl+t`JAE&OM3!pHXu2oF?m`_4TkrejViL=8%;$Z5*7qlMdu zNM0juId0K(*H!c6yMx35*Q8&DJK*L8IWy__4pN52eq?MUCiGxVVo^$?X$FD?__JGD zKG~l;qFOKqzL&&Abmx1C$bi6-sE`(xOPlKhX}j(jn{EaTbG6H}(LdtWC(lc7b&q+B zvfG2eTMKs^oO+<<&h&fd)C)XP$my6g2&6?vqxWPuhl(&dJ63F$u605pY70w;+O;l| zmn#~KRyY-LkF?ZyKn9k+O2@?3R0eoFPkdtMoec%2a8eAObP|}+Z!aZw@S60jc*X@d zB8PNGhmIccD4C>yC;FH29_|-ss$RncueH2Fi@)xdg%J~XVw0mkSB0wH!F53l%M5MO zb;$*m2WDu_E8dlgPFy9n$1U7z>OQjZ3^G%G(C15?T(Q?WsCGVHp1msadBkzIp(fZA zwYCc?HjHv^a6uyE$<%S}tu<*71g|@Ex)q1w>gn3eUFTXmo~RCc@3gGtapi?-XUnaS z7jr@V^Kqg$dJd1Xi9qwdD;>z463;qEpNJYaPBo_!v%4k#2`CoN_l#e#mOkAbuTG{rwQ~E72z($aG({L zO_lOL{xn?uL%aEJEbQ~nhroxxhroxxhroxxhroxxhroxxhroxxhroxxhroxxhroxx PhroxxhroxxZwUMeqYnAT diff --git a/tests/unit/server_ssl_wildcard.tar b/tests/unit/server_ssl_wildcard.tar index 0fa52c4eefaf1ce1d71da62dd54834cb4d9b6530..96da9c2bb279df5ce5a125c772ca850f8ddd2cb4 100644 GIT binary patch literal 10240 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 F@K;uA&s6{b literal 10240 zcmeH~NziXFsZ4(vN(70ZoHfB>;C;@3A{=5$w2StZb~!6c->o z%+2HR2!Ea5z$qWseEcmP=Wl<}fX+c+*thcmlQ{J2^UH*wDE9VH zzI})OqImw`cA4gQ{Qmvh8W&^y`qvEpH~Sx){^xxB*VkZpQ8vD_yzR<@%+fCZV;0b5 znTrpWrJGwpZ!$v{vO>#@nKzi8iJ_*`kjOfN=*S7mSv-Gg!d6Jgjr_uDd*9xW)S>bYFAmk2&ri zb6a%q=ay=bhCQAsb@qPOcYr@=`)e=f=5@9<%0z711XY&U=Xc>rdp~Wd&fQO2#fWJu zEFsbyA#(j;2YxP?bk6%3mdwMA#xiFx`u@9fU1zIqi9~9QQEy3nZz~GE`T`96N|-(g z)0oU~8~wFFrMojL77M4moQ?91?>3^6{?Mqo7Tmkp2WTCV8H zuY31G*|N_PVeD}z=3%kcq`-d-cE9vi{r28CzTSpi&jAa^2mA4IlKu`&XQpp`BXQ2y zE@i+EHp->tn-uAiSt=e}dZlAmQ@&)Xb4w60>b(PyEO1F?ogbyE=nijlcxs@_hwm2d zwO)@nuu{A0pc3(NYg~`$rfF(#P-ww~jizv00sXi*M?K1%Jreyi9Hy2oxf9}OR|gwx zKZcUqo1@H@wwlJkGt+wuJ^Zm%HP^K&f&>i3^)4?dC^pj!uo+o4*2jyG&aBRs-ONp; zyL5YH$=+y8N;PG6Sg4Z~{h4)!ro|^9KI!m(4oAjs7OT_r#%|}awITCN0Y?`>@n`qp zD_gWhFMy!f-rCFT5S&(kNi1t2G8?XLn^|z@*tw(%F#(#Pc`ZjRWD8*O4-q- zGy(&tV9s(XuD@lqmRP}|0wITFk`cvc;P0)&+ynn|jf*Gy4l9tK_bgZE*v6|(o7dJ( z0m>PAnA~F}-m=giy{+w$$?0@ceifDr2CueK{GA{Bm)#l zRdXXYCez~<@XEVl`p)Oi>gk(a(??eu!oXXYwng66o44qh6LXiWKY9oV;YP+y zf6A8mNk&c8UoiO9A+V~A{8gV_iZn=`HG4aEIH|u~H_wkbk0Y){yM`rx)&q`1u99QU zl)ol1=7+kc0Y8crZ*c!y!2WZ}@c&z+zx`eR>-_y!1@R^F|3?2&1V(??f1LQK|L8~m z|Ehfa>i5Ux`KkZ5Lw`4I`F`sEca;zS(F5>Zan>+eWoe72=YV0Q_^s!umsJZq^vxj6hRW%(7qXRfrAZD>OpnLgd^z>ArOGxw z1sgKSmUJ0)2br3fo<#QsKxh~BevTc&6)g~}22-t;c6|08d>b@PQ=YTP8+o0fM$`>4 zSx>n7rlI&UBiV#)$@+B@}7NQ+bC+J(Pj%qeuPg*}w#56b30|K(A2!YK<(K`6202l;%(G znX_*W!;%=lRh#!H5ZY#h6OzW`<+IIr8=bbS#%tfL$&Z*gZwWtZ)f%#Q}GYZudeXg+g<0zoj z$|0b<6G}LtZn8beSiA7C3GL?1ulhWJeeIS(9szNS(C}tbfC1HGHqx*AUOLNyD;a+U zmM81N1phPyfzcXzyA{e+jR=H8XFljvujR=lZwyDAg=6q$ZJ}>oTcI8;2$07MAt0pP z^op!R4WHXP%b{KB{YKbE!pJAt#4y)e+oEN&*ZO!vFK<0S#j|(XjS|GE1YH3}&+7fn zV~dcdk(VfwTTM^(o?H#Nj5M6STv!ktW#dqdkh(Nb5lqxlU)BotW;M8r0K}6OUf+=I z{=)t7T}MfaAmWmqQG0WR9YE`5f|i^(h$&I$7g6`y;`1X z8HVG-#;vn4e?H#$`EOOPbHdMLoXEt+0T4GW#zJJ2fL$hUxAAm> zbZQvoUMAdv*fHWsLje>`7k#>WT?WSPae_M4s#=ljhTI8fSDrr=0R(xA+O zXU+w;8z$xETnleTyX{Ps)$aOUAe9+G-dTpk7RjPFm*f>6?4b>Y%f)2kV}<7V0OI= Date: Mon, 16 Jan 2023 01:50:52 -0500 Subject: [PATCH 4/5] fix: use correct path within the ssl tarballs Also add a command to help automate the generation of the certificates in the future. --- tests.mk | 26 ++++++++++++++++++++++++++ tests/unit/server_ssl.tar | Bin 10240 -> 10240 bytes tests/unit/server_ssl_sans.tar | Bin 10240 -> 10240 bytes tests/unit/server_ssl_wildcard.tar | Bin 10240 -> 10240 bytes 4 files changed, 26 insertions(+) diff --git a/tests.mk b/tests.mk index 7d255e29d..495d5c80f 100644 --- a/tests.mk +++ b/tests.mk @@ -299,3 +299,29 @@ tests-ci-retry-failed: bats-retry --execute test-results/bats test-ci-docker: setup-docker-deploy-tests deploy-test-checks-root deploy-test-config deploy-test-multi deploy-test-go-fail-predeploy deploy-test-go-fail-postdeploy + +generate-ssl-tars: generate-ssl-tar generate-ssl-sans-tar generate-ssl-wildcard-tar + +generate-ssl-tar: + rm -rf /tmp/dokku-server_ssl + mkdir -p /tmp/dokku-server_ssl + openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout /tmp/dokku-server_ssl/server.key -out /tmp/dokku-server_ssl/server.crt -subj "/CN=dokku.me" -days 3650 + rm tests/unit/server_ssl.tar + cd /tmp/dokku-server_ssl && tar cvf $(PWD)/tests/unit/server_ssl.tar server.key server.crt + tar -tvf tests/unit/server_ssl.tar + +generate-ssl-sans-tar: + rm -rf /tmp/dokku-server_ssl_sans + mkdir -p /tmp/dokku-server_ssl_sans + openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout /tmp/dokku-server_ssl_sans/server.key -out /tmp/dokku-server_ssl_sans/server.crt -subj "/CN=test.dokku.me" -days 3650 -addext "subjectAltName = DNS:www.test.dokku.me, DNS:www.test.app.dokku.me" + rm tests/unit/server_ssl_sans.tar + cd /tmp/dokku-server_ssl_sans && tar cvf $(PWD)/tests/unit/server_ssl_sans.tar server.key server.crt + tar -tvf tests/unit/server_ssl_sans.tar + +generate-ssl-wildcard-tar: + rm -rf /tmp/dokku-server_ssl_wildcard + mkdir -p /tmp/dokku-server_ssl_wildcard + openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout /tmp/dokku-server_ssl_wildcard/server.key -out /tmp/dokku-server_ssl_wildcard/server.crt -subj "/CN=*.dokku.me" -days 3650 + rm tests/unit/server_ssl_wildcard.tar + cd /tmp/dokku-server_ssl_wildcard && tar cvf $(PWD)/tests/unit/server_ssl_wildcard.tar server.key server.crt + tar -tvf tests/unit/server_ssl_wildcard.tar diff --git a/tests/unit/server_ssl.tar b/tests/unit/server_ssl.tar index a70087e605c642e306b5b67ebb4ddca1f40f1f50..6cf6df7ede0037245447134729f883c628f84e23 100644 GIT binary patch literal 10240 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 literal 10240 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 diff --git a/tests/unit/server_ssl_sans.tar b/tests/unit/server_ssl_sans.tar index 61543392f5e85a37e1f083e006e26ecef6d78ef2..a472b46e1c15c402e93786a9b588136ee2c253de 100644 GIT binary patch literal 10240 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 literal 10240 zcmeI0N7LiTk%s4tUom&aF1$O!dk+xiqJRehlJNG|i`_D-ooQ*K71Bm*>{k~MRYjoi zW@YA+HJ8&?PJfu^=O5GbQbzf66<{BH1XI{v5eznS`f>F4|#`~T_wKlAAyit%$__|3oshW*y= zf4N6-4E^Q5+aHHu^p{_upL@+eH~as&{r}@zV+Bbuf8_+%S44$leBpa9U?_^{@f^oo zT+QqX%hXEXJzNcWK%KlMtQdpl=2Qc%T003jJMYA*)+b7{0*2F7ZNWu#UvQ zfxzs$SxEP*;P5U(mZ|XYCGnY3+@aIBn8Wbn-Smy!@RRh@cL9IuH2&IYu=OFfOu*LW zon;JzkKAXDI%^`)Q;G&_76yA=D-VN#B+eTpz*91mcLbJk0*1j9j^CMY6Evp(e5b=F zH{Zlq0vjUMD8`zZj8eQio@;oC0V_kM0P#?Q4!DuJY{8)Z!%NI&g&J^+eL1~ydG69pwa)!r;lyph<+wa@XJ$r0of zCBvsKd>CGhDWIWdrnL#!rdI}Vzx4xmyG?Zv$C!**FF1UQrHbCL`-Dt5hi0mia6Yv# zTup^exQ+tFF>D?^ktWZW4p22R(4Ww<`b5*^@T=J@ciZ2SM!=xlXWFC+w+33vl~;Ug zYN3i;Fr<93bC~0fF(<%Lnh?Ameu*0Vt-x_8WO0tI2Ujn_7E%#+qwpu!@uX8U7^yP6 z`_TEbu@DBywdZ028AlK*(Ov=vg78Ie&3^Bh`36Iq(kzmo|mRVxFlyp+;Da-8)?mA7nv5$;Y3x^ zJpnbyX9y`y0-`{%@XYX4JL^p6F}V6ro;`3Ans%O#l1MpK@USt1^H|R#UgTijQr`j6 zr7FfT8(Bx;8HZteOi~R+k_;C5=3E6|J0Z(D6JAzVuB7O;qGEL<0iSA2tDz=vT}<`O zab(XBB%TTDe=zwo*Zw}&HCU#i1lDJGfN^Bd;EnHZ6C7tYxRDd00xeD)N+J`|U+$J7 z3#`B3XWiV<0?pSyyL*$%%nJOioBlRfd}0Ov@l2MHjJsNQBgUw=%U6T(LYi|*(>Fd- z0AX2mvYA}&w)-7>(<{haLcgHui-sS*BW|y4J%=~HCyTkWd7u^7c87SF%JOblF$QR` zRsvu6$6V(@+#a2CK2mDwh270c7YXYrxO>NBx zlFlEe*CvKbzDxDxEGt7Yt65o}4~jD*$ov8GBpr)&@9wUm@Hk&jqEQau(u8Bu%9YJP zk>$vf2_11k95W{IDw)$+ta_DegVGE5*7L4LE+R2Pir8Rj*Icm_i0%lv5{gW;Ph@wD zIJ0w5rL`sO`K2Of@2$DK{U+;T21)x)v)%=l_xWb>GDy|MMF7^+pwG9P>UCv97=(b9 zm$F!&ROJ0OdU(1F9+lUP;8{kc^}@LCC?3nY!Xqe~kk0|gEhP~4x(Tw7(+Sz5KgBZR<=ji9Bab1y9>;CspxO#b(2^q=FB z|D}KZ9scXe^Ix}s@BH_B?*9w_5h#THj{hL|i~s(07Wn&5`o3-d#DBJ{+&}F1t0u&M z$39}(5h02S~f zqWT%20)9kPKLb>sVEKEZ`Wc`CeneD11606|i0Ws63iuIG{R~h6KO(B10V?1}MD;U3 z1^kGpehXCJx3Dx03}K?h=*`8upPOmSU2~5B(q}SX9lRF~*3CTewE9S|1=PVMqRUTa zuEHg`TqnHwgr6Xf<&n5a?{TPR+$$Jed>}5$iN6n0u9KW;A%z|+;tP@oQ{Iz2)SMIF zd@&#G)j>9t4?;VFOqXa;{B1?MY`}ouhemf$&mhXcNBt-ef+bfqaaWX}&q{BOq)po< zcF(zQOM(orw!u%a#qcU#yk+>LZF)lG2YAAhsZd}gqWmLhOANi>TcMI%j}m9Y6`Sr~ zAlajaR>03O8VNyHDSIfZ4iJj{See-7a8m{kJP+)+gMz*~i?KIX`7yf{_6$Bb8BbC= z%+8{=xC5NoXP8n>o}>VF2?;{KBC=onyMxp$+G_h_a@Lm_0fZ*dC&t zy+z_Ql!n-o;!XAeLv*^yvu+6ziA1Bj2dY(J>)r=PO*PWM8eqIhrQf(LRpu$_4Sx-)}_R&Swfb6s8{>6T_?k6hqdkQ|&XtD176=RU)^cJ&&JbxFb7rDWV0CIY# z16cP)2rqEJ5JcNvB<3U4P1^_Ew7I<&-f>bGdhw1KTBXTi12l8NCU@ppa!Tlns05Vn zp9StE^RgaNYy--xG6{)%weQs!l|&>> zy(5ZFxcahvSMup|vAw#xsWl;k4~x#(qJU&i%*iG{>i zSGoIpyr(UhRi8PfFH6Wfeu{u#llry4tmalwk*#8<7L2-WrOUxlm_lb+pcp)!HX}%? zV*;8>b`9q4+890utOnskW_E*Wx!_We5x)! zsy2a$;8TB1ZcUd323*}ZB$Mq|o7KKIHPwvUY7R%>2l@a%rwExfY~HlJMRxB}e72cBJt?tCgVs(WOk)bD-$u*BI3g%O9b@i)PlnuQ@u(`uSXs5y8$To|wGe z7!P^{18`bCLOt0G9+YvTHDS)9dVs~*=d`m)+?T~stTe$gnW3o(DOG8S;2}Jh6(`q0 zP$b|C!3=@>!l(0v&* zRQY}Iu}~HXF1#4$s0eC*zC<+h8MmKzPMUFZv_9u$GKxpuKUn6MJFDTz@j)KB9lO}Isa~~^;G-X-OKL$4qJ7eDh=f?FbCIPyegu7Wd*MZ+5dC4-S zoYNF(s3fxgtHAzUo$~jqo3D{C1-=ycQs7I0F9p67_)_3YfiDHV6!=o$OM$;A@JDEz B)uI3Z diff --git a/tests/unit/server_ssl_wildcard.tar b/tests/unit/server_ssl_wildcard.tar index 96da9c2bb279df5ce5a125c772ca850f8ddd2cb4..fa45381ac2d5313e910c416dc2a55ae8bc7c6d79 100644 GIT binary patch literal 10240 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 Jz`v6M{{WDfsGI-* literal 10240 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 F@K;uA&s6{b From 83f0b47323a5622f710672315e9adb5f2a481111 Mon Sep 17 00:00:00 2001 From: josegonzalez Date: Fri, 20 Jan 2023 23:48:02 -0500 Subject: [PATCH 5/5] fix: search for correct string --- tests/unit/certs.bats | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/unit/certs.bats b/tests/unit/certs.bats index 2664d73dd..ba8f7fe5f 100644 --- a/tests/unit/certs.bats +++ b/tests/unit/certs.bats @@ -114,6 +114,6 @@ teardown() { run /bin/bash -c "dokku certs:add $TEST_APP < $BATS_TEST_DIRNAME/server_ssl.tar && dokku certs:show $TEST_APP key" echo "output: $output" echo "status: $status" - assert_output_contains "-----END RSA PRIVATE KEY-----" + assert_output_contains "-----END PRIVATE KEY-----" assert_success }